linear_algebra.basisMathlib.LinearAlgebra.Basis.VectorSpace

This file has been ported!

Changes since the initial port

The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(last sync)

chore(linear_algebra/basis): simp lemmas about basis.equiv_fun (#19021)
Diff
@@ -833,6 +833,13 @@ begin
   simp only [finset.mem_univ, if_true, pi.zero_apply, one_smul, finset.sum_ite_eq', zero_smul],
 end
 
+@[simp] lemma basis.equiv_fun_of_equiv_fun (e : M ≃ₗ[R] (ι → R)) :
+  (basis.of_equiv_fun e).equiv_fun = e :=
+begin
+  ext j,
+  simp_rw [basis.equiv_fun_apply, basis.of_equiv_fun_repr_apply],
+end
+
 variables (S : Type*) [semiring S] [module S M']
 variables [smul_comm_class R S M']
 

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

feat(linear_algebra/basis): add basis.restrict_scalars (#18814)

Co-authored-by: Eric Wieser <wieser.eric@gmail.com>

Diff
@@ -1424,3 +1424,52 @@ let ⟨q, hq⟩ := p.exists_is_compl in nonempty.intro $
   (prod_equiv_of_is_compl q p hq.symm)
 
 end division_ring
+
+section restrict_scalars
+
+variables {S : Type*} [comm_ring R] [ring S] [nontrivial S] [add_comm_group M]
+variables [algebra R S] [module S M] [module R M]
+variables [is_scalar_tower R S M] [no_zero_smul_divisors R S] (b : basis ι S M)
+variables (R)
+
+open submodule
+
+/-- Let `b` be a `S`-basis of `M`. Let `R` be a comm_ring such that `algebra R S` with no zero
+smul divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
+noncomputable def basis.restrict_scalars : basis ι R (span R (set.range b)) :=
+basis.span (b.linear_independent.restrict_scalars (smul_left_injective R one_ne_zero))
+
+@[simp]
+lemma basis.restrict_scalars_apply (i : ι) : (b.restrict_scalars R i : M) = b i :=
+by simp only [basis.restrict_scalars, basis.span_apply]
+
+@[simp]
+lemma basis.restrict_scalars_repr_apply (m : span R (set.range b)) (i : ι) :
+  algebra_map R S ((b.restrict_scalars R).repr m i) = b.repr m i :=
+begin
+  suffices : finsupp.map_range.linear_map (algebra.linear_map R S) ∘ₗ
+      (b.restrict_scalars R).repr.to_linear_map
+      = ((b.repr : M →ₗ[S] (ι →₀ S)).restrict_scalars R).dom_restrict _,
+  { exact finsupp.congr_fun (linear_map.congr_fun this m) i, },
+  refine basis.ext (b.restrict_scalars R) (λ _, _),
+  simp only [linear_map.coe_comp, linear_equiv.coe_to_linear_map, function.comp_app, map_one,
+    basis.repr_self, finsupp.map_range.linear_map_apply, finsupp.map_range_single,
+    algebra.linear_map_apply, linear_map.dom_restrict_apply, linear_equiv.coe_coe,
+    basis.restrict_scalars_apply, linear_map.coe_restrict_scalars_eq_coe],
+end
+
+/-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
+coordinates of `m` on the basis `b` are in `R` (see `basis.mem_span` for the case `R = S`). -/
+lemma basis.mem_span_iff_repr_mem (m : M) :
+  m ∈ span R (set.range b) ↔ ∀ i, b.repr m i ∈ set.range (algebra_map R S) :=
+begin
+  refine ⟨λ hm i, ⟨(b.restrict_scalars R).repr ⟨m, hm⟩ i,
+    (b.restrict_scalars_repr_apply R ⟨m, hm⟩ i)⟩, λ h, _⟩,
+  rw [← b.total_repr m, finsupp.total_apply S _],
+  refine sum_mem (λ i _, _),
+  obtain ⟨_, h⟩ := h i,
+  simp_rw [← h, algebra_map_smul],
+  exact smul_mem _ _ (subset_span (set.mem_range_self i)),
+end
+
+end restrict_scalars

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(first ported)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -8,7 +8,7 @@ import Algebra.BigOperators.Finprod
 import Data.Fintype.BigOperators
 import LinearAlgebra.Finsupp
 import LinearAlgebra.LinearIndependent
-import LinearAlgebra.LinearPmap
+import LinearAlgebra.LinearPMap
 import LinearAlgebra.Projection
 
 #align_import linear_algebra.basis from "leanprover-community/mathlib"@"13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395"
@@ -1001,7 +1001,7 @@ theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
 #align basis.singleton_repr Basis.singleton_repr
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (x «expr ≠ » 0) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (x «expr ≠ » 0) -/
 #print Basis.basis_singleton_iff /-
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
@@ -1521,7 +1521,7 @@ theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
   · congr
     simp [Basis.unitsSMul, ← mul_smul]
   simp only [Basis.coord_apply, LinearMap.smul_apply, Basis.repr_self, Units.smul_def,
-    SMulHomClass.map_smul, Finsupp.single_apply]
+    MulActionSemiHomClass.map_smul, Finsupp.single_apply]
   split_ifs with h h
   · simp [h]
   · simp
@@ -1927,7 +1927,7 @@ theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
 
 open Submodule LinearMap
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 #print Submodule.exists_le_ker_of_lt_top /-
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
Diff
@@ -138,7 +138,7 @@ instance instFunLike : DFunLike (Basis ι R M) ι fun _ => M
           rw [← Finsupp.sum_single x, map_finsupp_sum, map_finsupp_sum]
           congr with (i r)
           have := congr_fun h i
-          dsimp at this 
+          dsimp at this
           rw [← mul_one r, ← Finsupp.smul_single', LinearEquiv.map_smul, LinearEquiv.map_smul,
             this])
 #align basis.fun_like Basis.instFunLike
@@ -939,9 +939,9 @@ protected theorem noZeroSMulDivisors [NoZeroDivisors R] (b : Basis ι R M) :
   ⟨fun c x hcx =>
     Classical.or_iff_not_imp_right.mpr fun hx =>
       by
-      rw [← b.total_repr x, ← LinearMap.map_smul] at hcx 
+      rw [← b.total_repr x, ← LinearMap.map_smul] at hcx
       have := linear_independent_iff.mp b.linear_independent (c • b.repr x) hcx
-      rw [smul_eq_zero] at this 
+      rw [smul_eq_zero] at this
       exact this.resolve_right fun hr => hx (b.repr.map_eq_zero_iff.mp hr)⟩
 #align basis.no_zero_smul_divisors Basis.noZeroSMulDivisors
 -/
@@ -965,7 +965,7 @@ theorem Basis.eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N :
   rintro g sum_eq i
   cases i
   simp only [Function.const_apply, Fin.default_eq_zero, Submodule.coe_mk, Finset.univ_unique,
-    Function.comp_const, Finset.sum_singleton] at sum_eq 
+    Function.comp_const, Finset.sum_singleton] at sum_eq
   convert (b.smul_eq_zero.mp sum_eq).resolve_right x_ne
 #align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zero
 -/
@@ -1332,17 +1332,17 @@ theorem maximal [Nontrivial R] (b : Basis ι R M) : b.LinearIndependent.Maximal
     ⟨fun i => ⟨b i, h ⟨i, rfl⟩⟩, fun i i' r =>
       b.injective (by simpa only [Subtype.mk_eq_mk] using r)⟩
   have r : ∀ i, b i = u i := fun i => rfl
-  simp_rw [Finsupp.total_apply, r] at e 
+  simp_rw [Finsupp.total_apply, r] at e
   change
     ((b.repr x).Sum fun (i : ι) (a : R) => (fun (x : w) (r : R) => r • (x : M)) (u i) a) =
       ((⟨x, p⟩ : w) : M) at
-    e 
-  rw [← Finsupp.sum_embDomain, ← Finsupp.total_apply] at e 
+    e
+  rw [← Finsupp.sum_embDomain, ← Finsupp.total_apply] at e
   -- Now we can contradict the linear independence of `hi`
   refine' hi.total_ne_of_not_mem_support _ _ e
   simp only [Finset.mem_map, Finsupp.support_embDomain]
   rintro ⟨j, -, W⟩
-  simp only [embedding.coe_fn_mk, Subtype.mk_eq_mk, ← r] at W 
+  simp only [embedding.coe_fn_mk, Subtype.mk_eq_mk, ← r] at W
   apply q ⟨j, W⟩
 #align basis.maximal Basis.maximal
 -/
@@ -1461,12 +1461,12 @@ theorem groupSMul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Dis
   by
   rw [eq_top_iff]
   intro j hj
-  rw [← hv] at hj 
+  rw [← hv] at hj
   rw [Submodule.mem_span] at hj ⊢
   refine' fun p hp => hj p fun u hu => _
   obtain ⟨i, rfl⟩ := hu
   have : ((w i)⁻¹ • 1 : R) • w i • v i ∈ p := p.smul_mem ((w i)⁻¹ • 1 : R) (hp ⟨i, rfl⟩)
-  rwa [smul_one_smul, inv_smul_smul] at this 
+  rwa [smul_one_smul, inv_smul_smul] at this
 #align basis.group_smul_span_eq_top Basis.groupSMul_span_eq_top
 -/
 
@@ -1563,7 +1563,7 @@ noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fi
     rw [Set.range_comp, Submodule.span_image, b.span_eq, Submodule.map_subtype_top]
   @Basis.mk _ _ _ (Fin.cons y (N.Subtype ∘ b) : Fin (n + 1) → M) _ _ _
     ((b.LinearIndependent.map' N.Subtype (Submodule.ker_subtype _)).fin_cons' _ _ <| by
-      rintro c ⟨x, hx⟩ hc; rw [span_b] at hx ; exact hli c x hx hc)
+      rintro c ⟨x, hx⟩ hc; rw [span_b] at hx; exact hli c x hx hc)
     fun x _ => by rw [Fin.range_cons, Submodule.mem_span_insert', span_b]; exact hsp x
 #align basis.mk_fin_cons Basis.mkFinCons
 -/
@@ -1824,8 +1824,8 @@ theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodul
     simp_rw [span_singleton_le_iff_mem, ← Ne.def, Submodule.ne_bot_iff] at *
     rcases h with ⟨s, ⟨hs, hz⟩⟩
     cases' mem_span_singleton.1 (hT.1 hs) with a ha
-    have h : a ≠ 0 := by intro h; rw [h, zero_smul] at ha ; exact hz ha.symm
-    apply_fun fun x => a⁻¹ • x at ha 
+    have h : a ≠ 0 := by intro h; rw [h, zero_smul] at ha; exact hz ha.symm
+    apply_fun fun x => a⁻¹ • x at ha
     simp_rw [← mul_smul, inv_mul_cancel h, one_smul, ha] at *; exact smul_mem T _ hs
 #align nonzero_span_atom nonzero_span_atom
 -/
@@ -1842,7 +1842,7 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
     refine' ⟨v, ⟨hv, _⟩⟩
     by_contra heq
     specialize h (span K {v})
-    rw [span_singleton_eq_bot, lt_iff_le_and_ne] at h 
+    rw [span_singleton_eq_bot, lt_iff_le_and_ne] at h
     exact hv (h ⟨(span_singleton_le_iff_mem v W).2 hW, Ne.symm HEq⟩)
   · rcases h with ⟨v, ⟨hv, rfl⟩⟩; exact nonzero_span_atom v hv
 #align atom_iff_nonzero_span atom_iff_nonzero_span
@@ -1871,13 +1871,13 @@ theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj :
     by
     have h₁ : LinearIndependent K fun x : ↥(⇑f '' range (Basis.ofVectorSpace _ _)) => ↑x :=
       @LinearIndependent.image_subtype _ _ _ _ _ _ _ _ _ f hB₀ (show Disjoint _ _ by simp [hf_inj])
-    rwa [Basis.range_ofVectorSpace K V] at h₁ 
+    rwa [Basis.range_ofVectorSpace K V] at h₁
   let C := this.extend (subset_univ _)
   have BC := this.subset_extend (subset_univ _)
   let hC := Basis.extend this
   haveI : Inhabited V := ⟨0⟩
   refine' ⟨hC.constr ℕ (C.restrict (inv_fun f)), hB.ext fun b => _⟩
-  rw [image_subset_iff] at BC 
+  rw [image_subset_iff] at BC
   have fb_eq : f b = hC ⟨f b, BC b.2⟩ :=
     by
     change f b = Basis.extend this _
@@ -1937,7 +1937,7 @@ theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
   rcases SetLike.exists_of_lt hp with ⟨v, -, hpv⟩; clear hp
   rcases(LinearPMap.supSpanSingleton ⟨p, 0⟩ v (1 : K) hpv).toFun.exists_extend with ⟨f, hf⟩
   refine' ⟨f, _, _⟩
-  · rintro rfl; rw [LinearMap.zero_comp] at hf 
+  · rintro rfl; rw [LinearMap.zero_comp] at hf
     have := LinearPMap.supSpanSingleton_apply_mk ⟨p, 0⟩ v (1 : K) hpv 0 p.zero_mem 1
     simpa using (LinearMap.congr_fun hf _).trans this
   · refine' fun x hx => mem_ker.2 _
Diff
@@ -1087,7 +1087,11 @@ def Module.fintypeOfFintype (b : Basis ι R M) [Fintype R] : Fintype M :=
 
 #print Module.card_fintype /-
 theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M = card R ^ card ι :=
-  by classical
+  by
+  classical exact
+    calc
+      card M = card (ι → R) := card_congr b.equiv_fun.to_equiv
+      _ = card R ^ card ι := card_fun
 #align module.card_fintype Module.card_fintype
 -/
 
@@ -1178,6 +1182,10 @@ theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
 @[simp]
 theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivFun = v := by
   classical
+  ext j
+  simp only [Basis.equivFun_symm_apply, Basis.coe_ofEquivFun]
+  simp_rw [Function.update_apply, ite_smul]
+  simp only [Finset.mem_univ, if_true, Pi.zero_apply, one_smul, Finset.sum_ite_eq', zero_smul]
 #align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFun
 -/
 
@@ -1505,7 +1513,18 @@ theorem unitsSMul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_s
 #print Basis.coord_unitsSMul /-
 @[simp]
 theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
-    (e.units_smul w).Coord i = (w i)⁻¹ • e.Coord i := by classical
+    (e.units_smul w).Coord i = (w i)⁻¹ • e.Coord i := by
+  classical
+  apply e.ext
+  intro j
+  trans ((e.units_smul w).Coord i) ((w j)⁻¹ • (e.units_smul w) j)
+  · congr
+    simp [Basis.unitsSMul, ← mul_smul]
+  simp only [Basis.coord_apply, LinearMap.smul_apply, Basis.repr_self, Units.smul_def,
+    SMulHomClass.map_smul, Finsupp.single_apply]
+  split_ifs with h h
+  · simp [h]
+  · simp
 #align basis.coord_units_smul Basis.coord_unitsSMul
 -/
 
@@ -1784,7 +1803,8 @@ variable (K V)
 
 #print VectorSpace.card_fintype /-
 theorem VectorSpace.card_fintype [Fintype K] [Fintype V] : ∃ n : ℕ, card V = card K ^ n := by
-  classical
+  classical exact
+    ⟨card (Basis.ofVectorSpaceIndex K V), Module.card_fintype (Basis.ofVectorSpace K V)⟩
 #align vector_space.card_fintype VectorSpace.card_fintype
 -/
 
Diff
@@ -1087,11 +1087,7 @@ def Module.fintypeOfFintype (b : Basis ι R M) [Fintype R] : Fintype M :=
 
 #print Module.card_fintype /-
 theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M = card R ^ card ι :=
-  by
-  classical exact
-    calc
-      card M = card (ι → R) := card_congr b.equiv_fun.to_equiv
-      _ = card R ^ card ι := card_fun
+  by classical
 #align module.card_fintype Module.card_fintype
 -/
 
@@ -1182,10 +1178,6 @@ theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
 @[simp]
 theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivFun = v := by
   classical
-  ext j
-  simp only [Basis.equivFun_symm_apply, Basis.coe_ofEquivFun]
-  simp_rw [Function.update_apply, ite_smul]
-  simp only [Finset.mem_univ, if_true, Pi.zero_apply, one_smul, Finset.sum_ite_eq', zero_smul]
 #align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFun
 -/
 
@@ -1513,18 +1505,7 @@ theorem unitsSMul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_s
 #print Basis.coord_unitsSMul /-
 @[simp]
 theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
-    (e.units_smul w).Coord i = (w i)⁻¹ • e.Coord i := by
-  classical
-  apply e.ext
-  intro j
-  trans ((e.units_smul w).Coord i) ((w j)⁻¹ • (e.units_smul w) j)
-  · congr
-    simp [Basis.unitsSMul, ← mul_smul]
-  simp only [Basis.coord_apply, LinearMap.smul_apply, Basis.repr_self, Units.smul_def,
-    SMulHomClass.map_smul, Finsupp.single_apply]
-  split_ifs with h h
-  · simp [h]
-  · simp
+    (e.units_smul w).Coord i = (w i)⁻¹ • e.Coord i := by classical
 #align basis.coord_units_smul Basis.coord_unitsSMul
 -/
 
@@ -1803,8 +1784,7 @@ variable (K V)
 
 #print VectorSpace.card_fintype /-
 theorem VectorSpace.card_fintype [Fintype K] [Fintype V] : ∃ n : ℕ, card V = card K ^ n := by
-  classical exact
-    ⟨card (Basis.ofVectorSpaceIndex K V), Module.card_fintype (Basis.ofVectorSpace K V)⟩
+  classical
 #align vector_space.card_fintype VectorSpace.card_fintype
 -/
 
Diff
@@ -125,9 +125,9 @@ theorem repr_injective : Injective (repr : Basis ι R M → M ≃ₗ[R] ι →
 #align basis.repr_injective Basis.repr_injective
 -/
 
-#print Basis.instDFunLike /-
+#print Basis.instFunLike /-
 /-- `b i` is the `i`th basis vector. -/
-instance instDFunLike : DFunLike (Basis ι R M) ι fun _ => M
+instance instFunLike : DFunLike (Basis ι R M) ι fun _ => M
     where
   coe b i := b.repr.symm (Finsupp.single i 1)
   coe_injective' f g h :=
@@ -141,7 +141,7 @@ instance instDFunLike : DFunLike (Basis ι R M) ι fun _ => M
           dsimp at this 
           rw [← mul_one r, ← Finsupp.smul_single', LinearEquiv.map_smul, LinearEquiv.map_smul,
             this])
-#align basis.fun_like Basis.instDFunLike
+#align basis.fun_like Basis.instFunLike
 -/
 
 #print Basis.coe_ofRepr /-
Diff
@@ -125,9 +125,9 @@ theorem repr_injective : Injective (repr : Basis ι R M → M ≃ₗ[R] ι →
 #align basis.repr_injective Basis.repr_injective
 -/
 
-#print Basis.funLike /-
+#print Basis.instDFunLike /-
 /-- `b i` is the `i`th basis vector. -/
-instance funLike : FunLike (Basis ι R M) ι fun _ => M
+instance instDFunLike : DFunLike (Basis ι R M) ι fun _ => M
     where
   coe b i := b.repr.symm (Finsupp.single i 1)
   coe_injective' f g h :=
@@ -141,7 +141,7 @@ instance funLike : FunLike (Basis ι R M) ι fun _ => M
           dsimp at this 
           rw [← mul_one r, ← Finsupp.smul_single', LinearEquiv.map_smul, LinearEquiv.map_smul,
             this])
-#align basis.fun_like Basis.funLike
+#align basis.fun_like Basis.instDFunLike
 -/
 
 #print Basis.coe_ofRepr /-
@@ -409,7 +409,7 @@ theorem eq_ofRepr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i
 /-- Two bases are equal if their basis vectors are the same. -/
 @[ext]
 theorem eq_of_apply_eq {b₁ b₂ : Basis ι R M} : (∀ i, b₁ i = b₂ i) → b₁ = b₂ :=
-  FunLike.ext _ _
+  DFunLike.ext _ _
 #align basis.eq_of_apply_eq Basis.eq_of_apply_eq
 -/
 
@@ -515,7 +515,7 @@ theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.sy
 #print Basis.repr_reindex /-
 @[simp]
 theorem repr_reindex : (b.reindex e).repr x = (b.repr x).mapDomain e :=
-  FunLike.ext _ _ <| by simp [repr_reindex_apply]
+  DFunLike.ext _ _ <| by simp [repr_reindex_apply]
 #align basis.repr_reindex Basis.repr_reindex
 -/
 
Diff
@@ -1595,7 +1595,7 @@ theorem coe_mkFinConsOfLE {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
     (hNO : N ≤ O) (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0)
     (hsp : ∀ z ∈ O, ∃ c : R, z + c • y ∈ N) :
     (mkFinConsOfLE y yO b hNO hli hsp : Fin (n + 1) → O) =
-      Fin.cons ⟨y, yO⟩ (Submodule.ofLe hNO ∘ b) :=
+      Fin.cons ⟨y, yO⟩ (Submodule.inclusion hNO ∘ b) :=
   coe_mkFinCons _ _ _ _
 #align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLE
 -/
Diff
@@ -937,7 +937,7 @@ section NoZeroSMulDivisors
 protected theorem noZeroSMulDivisors [NoZeroDivisors R] (b : Basis ι R M) :
     NoZeroSMulDivisors R M :=
   ⟨fun c x hcx =>
-    or_iff_not_imp_right.mpr fun hx =>
+    Classical.or_iff_not_imp_right.mpr fun hx =>
       by
       rw [← b.total_repr x, ← LinearMap.map_smul] at hcx 
       have := linear_independent_iff.mp b.linear_independent (c • b.repr x) hcx
Diff
@@ -190,8 +190,7 @@ theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
   calc
     b.repr.symm v = b.repr.symm (v.Sum Finsupp.single) := by simp
-    _ = ∑ i in v.support, b.repr.symm (Finsupp.single i (v i)) := by
-      rw [Finsupp.sum, LinearEquiv.map_sum]
+    _ = ∑ i in v.support, b.repr.symm (Finsupp.single i (v i)) := by rw [Finsupp.sum, map_sum]
     _ = Finsupp.total ι M R b v := by simp [repr_symm_single, Finsupp.total_apply, Finsupp.sum]
 #align basis.repr_symm_apply Basis.repr_symm_apply
 -/
@@ -334,7 +333,7 @@ theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
   by
   ext x
   rw [← b.total_repr x, Finsupp.total_apply, Finsupp.sum]
-  simp only [LinearMap.map_sum, LinearMap.map_smulₛₗ, h]
+  simp only [map_sum, LinearMap.map_smulₛₗ, h]
 #align basis.ext Basis.ext
 -/
 
@@ -344,7 +343,7 @@ theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
   by
   ext x
   rw [← b.total_repr x, Finsupp.total_apply, Finsupp.sum]
-  simp only [LinearEquiv.map_sum, LinearEquiv.map_smulₛₗ, h]
+  simp only [map_sum, LinearEquiv.map_smulₛₗ, h]
 #align basis.ext' Basis.ext'
 -/
 
@@ -1289,7 +1288,7 @@ theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i :
     ∑ j : ι', b.repr (b' j) i * b'.repr x j = b.repr x i :=
   by
   conv_rhs => rw [← b'.sum_repr x]
-  simp_rw [LinearEquiv.map_sum, LinearEquiv.map_smul, Finset.sum_apply']
+  simp_rw [map_sum, LinearEquiv.map_smul, Finset.sum_apply']
   refine' Finset.sum_congr rfl fun j _ => _
   rw [Finsupp.smul_apply, smul_eq_mul, mul_comm]
 #align basis.sum_repr_mul_repr Basis.sum_repr_mul_repr
Diff
@@ -3,13 +3,13 @@ Copyright (c) 2017 Johannes Hölzl. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl, Mario Carneiro, Alexander Bentkamp
 -/
-import Mathbin.Algebra.BigOperators.Finsupp
-import Mathbin.Algebra.BigOperators.Finprod
-import Mathbin.Data.Fintype.BigOperators
-import Mathbin.LinearAlgebra.Finsupp
-import Mathbin.LinearAlgebra.LinearIndependent
-import Mathbin.LinearAlgebra.LinearPmap
-import Mathbin.LinearAlgebra.Projection
+import Algebra.BigOperators.Finsupp
+import Algebra.BigOperators.Finprod
+import Data.Fintype.BigOperators
+import LinearAlgebra.Finsupp
+import LinearAlgebra.LinearIndependent
+import LinearAlgebra.LinearPmap
+import LinearAlgebra.Projection
 
 #align_import linear_algebra.basis from "leanprover-community/mathlib"@"13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395"
 
@@ -1002,7 +1002,7 @@ theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
 #align basis.singleton_repr Basis.singleton_repr
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (x «expr ≠ » 0) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (x «expr ≠ » 0) -/
 #print Basis.basis_singleton_iff /-
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
@@ -1928,7 +1928,7 @@ theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
 
 open Submodule LinearMap
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 #print Submodule.exists_le_ker_of_lt_top /-
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
Diff
@@ -355,7 +355,7 @@ theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
 #align basis.ext_elem_iff Basis.ext_elem_iff
 -/
 
-alias ext_elem_iff ↔ _ _root_.basis.ext_elem
+alias ⟨_, _root_.basis.ext_elem⟩ := ext_elem_iff
 #align basis.ext_elem Basis.ext_elem
 
 #print Basis.repr_eq_iff /-
Diff
@@ -1455,8 +1455,8 @@ protected theorem span_apply (i : ι) : (Basis.span hli i : M) = v i :=
 
 end Span
 
-#print Basis.groupSmul_span_eq_top /-
-theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
+#print Basis.groupSMul_span_eq_top /-
+theorem groupSMul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
   by
@@ -1468,31 +1468,31 @@ theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Dis
   obtain ⟨i, rfl⟩ := hu
   have : ((w i)⁻¹ • 1 : R) • w i • v i ∈ p := p.smul_mem ((w i)⁻¹ • 1 : R) (hp ⟨i, rfl⟩)
   rwa [smul_one_smul, inv_smul_smul] at this 
-#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_top
+#align basis.group_smul_span_eq_top Basis.groupSMul_span_eq_top
 -/
 
-#print Basis.groupSmul /-
+#print Basis.groupSMul /-
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` are elements of a group,
 `group_smul` provides the basis corresponding to `w • v`. -/
-def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
+def groupSMul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] (v : Basis ι R M) (w : ι → G) : Basis ι R M :=
   @Basis.mk ι R M (w • v) _ _ _ (v.LinearIndependent.group_smul w)
-    (groupSmul_span_eq_top v.span_eq).ge
-#align basis.group_smul Basis.groupSmul
+    (groupSMul_span_eq_top v.span_eq).ge
+#align basis.group_smul Basis.groupSMul
 -/
 
-#print Basis.groupSmul_apply /-
-theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
+#print Basis.groupSMul_apply /-
+theorem groupSMul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
     v.group_smul w i = (w • v : ι → M) i :=
-  mk_apply (v.LinearIndependent.group_smul w) (groupSmul_span_eq_top v.span_eq).ge i
-#align basis.group_smul_apply Basis.groupSmul_apply
+  mk_apply (v.LinearIndependent.group_smul w) (groupSMul_span_eq_top v.span_eq).ge i
+#align basis.group_smul_apply Basis.groupSMul_apply
 -/
 
 #print Basis.units_smul_span_eq_top /-
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
-  groupSmul_span_eq_top hv
+  groupSMul_span_eq_top hv
 #align basis.units_smul_span_eq_top Basis.units_smul_span_eq_top
 -/
 
@@ -1578,27 +1578,27 @@ theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R
 #align basis.coe_mk_fin_cons Basis.coe_mkFinCons
 -/
 
-#print Basis.mkFinConsOfLe /-
+#print Basis.mkFinConsOfLE /-
 /-- Let `b` be a basis for a submodule `N ≤ O`. If `y ∈ O` is linear independent of `N`
 and `y` and `N` together span the whole of `O`, then there is a basis for `O`
 whose basis vectors are given by `fin.cons y b`. -/
-noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
+noncomputable def mkFinConsOfLE {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
     (b : Basis (Fin n) R N) (hNO : N ≤ O) (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0)
     (hsp : ∀ z ∈ O, ∃ c : R, z + c • y ∈ N) : Basis (Fin (n + 1)) R O :=
   mkFinCons ⟨y, yO⟩ (b.map (Submodule.comapSubtypeEquivOfLe hNO).symm)
     (fun c x hc hx => hli c x (Submodule.mem_comap.mp hc) (congr_arg coe hx)) fun z => hsp z z.2
-#align basis.mk_fin_cons_of_le Basis.mkFinConsOfLe
+#align basis.mk_fin_cons_of_le Basis.mkFinConsOfLE
 -/
 
-#print Basis.coe_mkFinConsOfLe /-
+#print Basis.coe_mkFinConsOfLE /-
 @[simp]
-theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
+theorem coe_mkFinConsOfLE {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
     (hNO : N ≤ O) (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0)
     (hsp : ∀ z ∈ O, ∃ c : R, z + c • y ∈ N) :
-    (mkFinConsOfLe y yO b hNO hli hsp : Fin (n + 1) → O) =
+    (mkFinConsOfLE y yO b hNO hli hsp : Fin (n + 1) → O) =
       Fin.cons ⟨y, yO⟩ (Submodule.ofLe hNO ∘ b) :=
   coe_mkFinCons _ _ _ _
-#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLe
+#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLE
 -/
 
 #print Basis.finTwoProd /-
Diff
@@ -1853,7 +1853,7 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
 instance : IsAtomistic (Submodule K V)
     where eq_sSup_atoms := by
     intro W
-    use {T : Submodule K V | ∃ (v : V) (hv : v ∈ W) (hz : v ≠ 0), T = span K {v}}
+    use{T : Submodule K V | ∃ (v : V) (hv : v ∈ W) (hz : v ≠ 0), T = span K {v}}
     refine' ⟨submodule_eq_Sup_le_nonzero_spans W, _⟩
     rintro _ ⟨w, ⟨_, ⟨hw, rfl⟩⟩⟩; exact nonzero_span_atom w hw
 
Diff
@@ -2,11 +2,6 @@
 Copyright (c) 2017 Johannes Hölzl. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl, Mario Carneiro, Alexander Bentkamp
-
-! This file was ported from Lean 3 source module linear_algebra.basis
-! leanprover-community/mathlib commit 13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Algebra.BigOperators.Finsupp
 import Mathbin.Algebra.BigOperators.Finprod
@@ -16,6 +11,8 @@ import Mathbin.LinearAlgebra.LinearIndependent
 import Mathbin.LinearAlgebra.LinearPmap
 import Mathbin.LinearAlgebra.Projection
 
+#align_import linear_algebra.basis from "leanprover-community/mathlib"@"13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395"
+
 /-!
 
 # Bases
@@ -1005,7 +1002,7 @@ theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
 #align basis.singleton_repr Basis.singleton_repr
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (x «expr ≠ » 0) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (x «expr ≠ » 0) -/
 #print Basis.basis_singleton_iff /-
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
@@ -1931,7 +1928,7 @@ theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
 
 open Submodule LinearMap
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 #print Submodule.exists_le_ker_of_lt_top /-
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
Diff
@@ -1952,7 +1952,7 @@ theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
 
 #print quotient_prod_linearEquiv /-
 theorem quotient_prod_linearEquiv (p : Submodule K V) : Nonempty (((V ⧸ p) × p) ≃ₗ[K] V) :=
-  let ⟨q, hq⟩ := p.exists_isCompl
+  let ⟨q, hq⟩ := p.exists_is_compl
   Nonempty.intro <|
     ((quotientEquivOfIsCompl p q hq).Prod (LinearEquiv.refl _ _)).trans
       (prodEquivOfIsCompl q p hq.symm)
Diff
@@ -122,9 +122,11 @@ variable (b b₁ : Basis ι R M) (i : ι) (c : R) (x : M)
 
 section repr
 
+#print Basis.repr_injective /-
 theorem repr_injective : Injective (repr : Basis ι R M → M ≃ₗ[R] ι →₀ R) := fun f g h => by
   cases f <;> cases g <;> congr
 #align basis.repr_injective Basis.repr_injective
+-/
 
 #print Basis.funLike /-
 /-- `b i` is the `i`th basis vector. -/
@@ -145,35 +147,48 @@ instance funLike : FunLike (Basis ι R M) ι fun _ => M
 #align basis.fun_like Basis.funLike
 -/
 
+#print Basis.coe_ofRepr /-
 @[simp]
 theorem coe_ofRepr (e : M ≃ₗ[R] ι →₀ R) : ⇑(ofRepr e) = fun i => e.symm (Finsupp.single i 1) :=
   rfl
 #align basis.coe_of_repr Basis.coe_ofRepr
+-/
 
+#print Basis.injective /-
 protected theorem injective [Nontrivial R] : Injective b :=
   b.repr.symm.Injective.comp fun _ _ => (Finsupp.single_left_inj (one_ne_zero : (1 : R) ≠ 0)).mp
 #align basis.injective Basis.injective
+-/
 
+#print Basis.repr_symm_single_one /-
 theorem repr_symm_single_one : b.repr.symm (Finsupp.single i 1) = b i :=
   rfl
 #align basis.repr_symm_single_one Basis.repr_symm_single_one
+-/
 
+#print Basis.repr_symm_single /-
 theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
   calc
     b.repr.symm (Finsupp.single i c) = b.repr.symm (c • Finsupp.single i 1) := by
       rw [Finsupp.smul_single', mul_one]
     _ = c • b i := by rw [LinearEquiv.map_smul, repr_symm_single_one]
 #align basis.repr_symm_single Basis.repr_symm_single
+-/
 
+#print Basis.repr_self /-
 @[simp]
 theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
   LinearEquiv.apply_symm_apply _ _
 #align basis.repr_self Basis.repr_self
+-/
 
+#print Basis.repr_self_apply /-
 theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then 1 else 0 := by
   rw [repr_self, Finsupp.single_apply]
 #align basis.repr_self_apply Basis.repr_self_apply
+-/
 
+#print Basis.repr_symm_apply /-
 @[simp]
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
   calc
@@ -182,37 +197,50 @@ theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
       rw [Finsupp.sum, LinearEquiv.map_sum]
     _ = Finsupp.total ι M R b v := by simp [repr_symm_single, Finsupp.total_apply, Finsupp.sum]
 #align basis.repr_symm_apply Basis.repr_symm_apply
+-/
 
+#print Basis.coe_repr_symm /-
 @[simp]
 theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
   LinearMap.ext fun v => b.repr_symm_apply v
 #align basis.coe_repr_symm Basis.coe_repr_symm
+-/
 
+#print Basis.repr_total /-
 @[simp]
 theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v := by rw [← b.coe_repr_symm];
   exact b.repr.apply_symm_apply v
 #align basis.repr_total Basis.repr_total
+-/
 
+#print Basis.total_repr /-
 @[simp]
 theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x := by rw [← b.coe_repr_symm];
   exact b.repr.symm_apply_apply x
 #align basis.total_repr Basis.total_repr
+-/
 
+#print Basis.repr_range /-
 theorem repr_range : (b.repr : M →ₗ[R] ι →₀ R).range = Finsupp.supported R R univ := by
   rw [LinearEquiv.range, Finsupp.supported_univ]
 #align basis.repr_range Basis.repr_range
+-/
 
+#print Basis.mem_span_repr_support /-
 theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
     m ∈ span R (b '' (b.repr m).support) :=
   (Finsupp.mem_span_image_iff_total _).2 ⟨b.repr m, by simp [Finsupp.mem_supported_support]⟩
 #align basis.mem_span_repr_support Basis.mem_span_repr_support
+-/
 
+#print Basis.repr_support_subset_of_mem_span /-
 theorem repr_support_subset_of_mem_span {ι : Type _} (b : Basis ι R M) (s : Set ι) {m : M}
     (hm : m ∈ span R (b '' s)) : ↑(b.repr m).support ⊆ s :=
   by
   rcases(Finsupp.mem_span_image_iff_total _).1 hm with ⟨l, hl, hlm⟩
   rwa [← hlm, repr_total, ← Finsupp.mem_supported R l]
 #align basis.repr_support_subset_of_mem_span Basis.repr_support_subset_of_mem_span
+-/
 
 end repr
 
@@ -231,10 +259,12 @@ def coord : M →ₗ[R] R :=
 #align basis.coord Basis.coord
 -/
 
+#print Basis.forall_coord_eq_zero_iff /-
 theorem forall_coord_eq_zero_iff {x : M} : (∀ i, b.Coord i x = 0) ↔ x = 0 :=
   Iff.trans (by simp only [b.coord_apply, Finsupp.ext_iff, Finsupp.zero_apply])
     b.repr.map_eq_zero_iff
 #align basis.forall_coord_eq_zero_iff Basis.forall_coord_eq_zero_iff
+-/
 
 #print Basis.sumCoords /-
 /-- The sum of the coordinates of an element `m : M` with respect to a basis. -/
@@ -243,11 +273,14 @@ noncomputable def sumCoords : M →ₗ[R] R :=
 #align basis.sum_coords Basis.sumCoords
 -/
 
+#print Basis.coe_sumCoords /-
 @[simp]
 theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i => id :=
   rfl
 #align basis.coe_sum_coords Basis.coe_sumCoords
+-/
 
+#print Basis.coe_sumCoords_eq_finsum /-
 theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b.Coord i m :=
   by
   ext m
@@ -256,7 +289,9 @@ theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b
     finsum_eq_sum _ (b.repr m).finite_support, Finsupp.sum, Finset.finite_toSet_toFinset, id.def,
     Finsupp.fun_support_eq]
 #align basis.coe_sum_coords_eq_finsum Basis.coe_sumCoords_eq_finsum
+-/
 
+#print Basis.coe_sumCoords_of_fintype /-
 @[simp]
 theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i, b.Coord i :=
   by
@@ -264,20 +299,27 @@ theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i,
   simp only [sum_coords, Finsupp.sum_fintype, LinearMap.id_coe, LinearEquiv.coe_coe, coord_apply,
     id.def, Fintype.sum_apply, imp_true_iff, eq_self_iff_true, Finsupp.coe_lsum, LinearMap.coe_comp]
 #align basis.coe_sum_coords_of_fintype Basis.coe_sumCoords_of_fintype
+-/
 
+#print Basis.sumCoords_self_apply /-
 @[simp]
 theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
   simp only [Basis.sumCoords, LinearMap.id_coe, LinearEquiv.coe_coe, id.def, Basis.repr_self,
     Function.comp_apply, Finsupp.coe_lsum, LinearMap.coe_comp, Finsupp.sum_single_index]
 #align basis.sum_coords_self_apply Basis.sumCoords_self_apply
+-/
 
+#print Basis.dvd_coord_smul /-
 theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
   ⟨b.Coord i m, by simp⟩
 #align basis.dvd_coord_smul Basis.dvd_coord_smul
+-/
 
+#print Basis.coord_repr_symm /-
 theorem coord_repr_symm (b : Basis ι R M) (i : ι) (f : ι →₀ R) : b.Coord i (b.repr.symm f) = f i :=
   by simp only [repr_symm_apply, coord_apply, repr_total]
 #align basis.coord_repr_symm Basis.coord_repr_symm
+-/
 
 end Coord
 
@@ -289,6 +331,7 @@ variable [RingHomInvPair σ σ'] [RingHomInvPair σ' σ]
 
 variable {M₁ : Type _} [AddCommMonoid M₁] [Module R₁ M₁]
 
+#print Basis.ext /-
 /-- Two linear maps are equal if they are equal on basis vectors. -/
 theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
   by
@@ -296,9 +339,9 @@ theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
   rw [← b.total_repr x, Finsupp.total_apply, Finsupp.sum]
   simp only [LinearMap.map_sum, LinearMap.map_smulₛₗ, h]
 #align basis.ext Basis.ext
+-/
 
-include σ'
-
+#print Basis.ext' /-
 /-- Two linear equivs are equal if they are equal on basis vectors. -/
 theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
   by
@@ -306,31 +349,39 @@ theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
   rw [← b.total_repr x, Finsupp.total_apply, Finsupp.sum]
   simp only [LinearEquiv.map_sum, LinearEquiv.map_smulₛₗ, h]
 #align basis.ext' Basis.ext'
+-/
 
-omit σ'
-
+#print Basis.ext_elem_iff /-
 /-- Two elements are equal iff their coordinates are equal. -/
 theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
   simp only [← Finsupp.ext_iff, EmbeddingLike.apply_eq_iff_eq]
 #align basis.ext_elem_iff Basis.ext_elem_iff
+-/
 
 alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 #align basis.ext_elem Basis.ext_elem
 
+#print Basis.repr_eq_iff /-
 theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
     ↑b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
   ⟨fun h i => h ▸ b.repr_self i, fun h => b.ext fun i => (b.repr_self i).trans (h i).symm⟩
 #align basis.repr_eq_iff Basis.repr_eq_iff
+-/
 
+#print Basis.repr_eq_iff' /-
 theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
     b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
   ⟨fun h i => h ▸ b.repr_self i, fun h => b.ext' fun i => (b.repr_self i).trans (h i).symm⟩
 #align basis.repr_eq_iff' Basis.repr_eq_iff'
+-/
 
+#print Basis.apply_eq_iff /-
 theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x = Finsupp.single i 1 :=
   ⟨fun h => h ▸ b.repr_self i, fun h => b.repr.Injective ((b.repr_self i).trans h.symm)⟩
 #align basis.apply_eq_iff Basis.apply_eq_iff
+-/
 
+#print Basis.repr_apply_eq /-
 /-- An unbundled version of `repr_eq_iff` -/
 theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f y)
     (hsmul : ∀ (c : R) (x : M), f (c • x) = c • f x) (f_eq : ∀ i, f (b i) = Finsupp.single i 1)
@@ -349,17 +400,22 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
     b.repr x i = f_i x := by rw [← this]; rfl
     _ = f x i := rfl
 #align basis.repr_apply_eq Basis.repr_apply_eq
+-/
 
+#print Basis.eq_ofRepr_eq_repr /-
 /-- Two bases are equal if they assign the same coordinates. -/
 theorem eq_ofRepr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
   repr_injective <| by ext; apply h
 #align basis.eq_of_repr_eq_repr Basis.eq_ofRepr_eq_repr
+-/
 
+#print Basis.eq_of_apply_eq /-
 /-- Two bases are equal if their basis vectors are the same. -/
 @[ext]
 theorem eq_of_apply_eq {b₁ b₂ : Basis ι R M} : (∀ i, b₁ i = b₂ i) → b₁ = b₂ :=
   FunLike.ext _ _
 #align basis.eq_of_apply_eq Basis.eq_of_apply_eq
+-/
 
 end Ext
 
@@ -375,10 +431,12 @@ protected def map : Basis ι R M' :=
 #align basis.map Basis.map
 -/
 
+#print Basis.map_apply /-
 @[simp]
 theorem map_apply (i) : b.map f i = f (b i) :=
   rfl
 #align basis.map_apply Basis.map_apply
+-/
 
 end Map
 
@@ -387,10 +445,9 @@ section MapCoeffs
 variable {R' : Type _} [Semiring R'] [Module R' M] (f : R ≃+* R')
   (h : ∀ (c) (x : M), f c • x = c • x)
 
-include f h b
-
 attribute [local instance] SMul.comp.isScalarTower
 
+#print Basis.mapCoeffs /-
 /-- If `R` and `R'` are isomorphic rings that act identically on a module `M`,
 then a basis for `M` as `R`-module is also a basis for `M` as `R'`-module.
 
@@ -407,15 +464,20 @@ def mapCoeffs : Basis ι R' M :=
       (b.repr.restrict_scalars R').trans <|
         Finsupp.mapRange.linearEquiv (Module.compHom.toLinearEquiv f.symm).symm
 #align basis.map_coeffs Basis.mapCoeffs
+-/
 
+#print Basis.mapCoeffs_apply /-
 theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
   apply_eq_iff.mpr <| by simp [f.to_add_equiv_eq_coe]
 #align basis.map_coeffs_apply Basis.mapCoeffs_apply
+-/
 
+#print Basis.coe_mapCoeffs /-
 @[simp]
 theorem coe_mapCoeffs : (b.mapCoeffs f h : ι → M) = b :=
   funext <| b.mapCoeffs_apply f h
 #align basis.coe_map_coeffs Basis.coe_mapCoeffs
+-/
 
 end MapCoeffs
 
@@ -432,37 +494,50 @@ def reindex : Basis ι' R M :=
 #align basis.reindex Basis.reindex
 -/
 
+#print Basis.reindex_apply /-
 theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
   show
     (b.repr.trans (Finsupp.domLCongr e)).symm (Finsupp.single i' 1) =
       b.repr.symm (Finsupp.single (e.symm i') 1)
     by rw [LinearEquiv.symm_trans_apply, Finsupp.domLCongr_symm, Finsupp.domLCongr_single]
 #align basis.reindex_apply Basis.reindex_apply
+-/
 
+#print Basis.coe_reindex /-
 @[simp]
 theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
   funext (b.reindex_apply e)
 #align basis.coe_reindex Basis.coe_reindex
+-/
 
+#print Basis.repr_reindex_apply /-
 theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.symm i') :=
   show (Finsupp.domLCongr e : _ ≃ₗ[R] _) (b.repr x) i' = _ by simp
 #align basis.repr_reindex_apply Basis.repr_reindex_apply
+-/
 
+#print Basis.repr_reindex /-
 @[simp]
 theorem repr_reindex : (b.reindex e).repr x = (b.repr x).mapDomain e :=
   FunLike.ext _ _ <| by simp [repr_reindex_apply]
 #align basis.repr_reindex Basis.repr_reindex
+-/
 
+#print Basis.reindex_refl /-
 @[simp]
 theorem reindex_refl : b.reindex (Equiv.refl ι) = b :=
   eq_of_apply_eq fun i => by simp
 #align basis.reindex_refl Basis.reindex_refl
+-/
 
+#print Basis.range_reindex /-
 /-- `simp` can prove this as `basis.coe_reindex` + `equiv_like.range_comp` -/
 theorem range_reindex : Set.range (b.reindex e) = Set.range b := by
   rw [coe_reindex, EquivLike.range_comp]
 #align basis.range_reindex Basis.range_reindex
+-/
 
+#print Basis.sumCoords_reindex /-
 @[simp]
 theorem sumCoords_reindex : (b.reindex e).sumCoords = b.sumCoords :=
   by
@@ -470,6 +545,7 @@ theorem sumCoords_reindex : (b.reindex e).sumCoords = b.sumCoords :=
   simp only [coe_sum_coords, repr_reindex]
   exact Finsupp.sum_mapDomain_index (fun _ => rfl) fun _ _ _ => rfl
 #align basis.sum_coords_reindex Basis.sumCoords_reindex
+-/
 
 #print Basis.reindexRange /-
 /-- `b.reindex_range` is a basis indexed by `range b`, the basis vectors themselves. -/
@@ -484,6 +560,7 @@ def reindexRange : Basis (range b) R M :=
 #align basis.reindex_range Basis.reindexRange
 -/
 
+#print Basis.reindexRange_self /-
 theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange ⟨b i, h⟩ = b i :=
   by
   by_cases htr : Nontrivial R
@@ -494,7 +571,9 @@ theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange
     letI := Module.subsingleton R M
     simp [reindex_range]
 #align basis.reindex_range_self Basis.reindexRange_self
+-/
 
+#print Basis.reindexRange_repr_self /-
 theorem reindexRange_repr_self (i : ι) :
     b.reindexRange.repr (b i) = Finsupp.single ⟨b i, mem_range_self i⟩ 1 :=
   calc
@@ -502,12 +581,16 @@ theorem reindexRange_repr_self (i : ι) :
       congr_arg _ (b.reindexRange_self _ _).symm
     _ = Finsupp.single ⟨b i, mem_range_self i⟩ 1 := b.reindexRange.repr_self _
 #align basis.reindex_range_repr_self Basis.reindexRange_repr_self
+-/
 
+#print Basis.reindexRange_apply /-
 @[simp]
 theorem reindexRange_apply (x : range b) : b.reindexRange x = x := by rcases x with ⟨bi, ⟨i, rfl⟩⟩;
   exact b.reindex_range_self i
 #align basis.reindex_range_apply Basis.reindexRange_apply
+-/
 
+#print Basis.reindexRange_repr' /-
 theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
     b.reindexRange.repr x ⟨bi, ⟨i, h⟩⟩ = b.repr x i :=
   by
@@ -526,12 +609,15 @@ theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
     refine' @Finsupp.single_apply_left _ _ _ _ (fun i => (⟨b i, _⟩ : Set.range b)) _ _ _ _
     exact fun i j h => b.injective (Subtype.mk.inj h)
 #align basis.reindex_range_repr' Basis.reindexRange_repr'
+-/
 
+#print Basis.reindexRange_repr /-
 @[simp]
 theorem reindexRange_repr (x : M) (i : ι) (h := Set.mem_range_self i) :
     b.reindexRange.repr x ⟨b i, h⟩ = b.repr x i :=
   b.reindexRange_repr' _ rfl
 #align basis.reindex_range_repr Basis.reindexRange_repr
+-/
 
 section Fintype
 
@@ -545,18 +631,23 @@ def reindexFinsetRange : Basis (Finset.univ.image b) R M :=
 #align basis.reindex_finset_range Basis.reindexFinsetRange
 -/
 
+#print Basis.reindexFinsetRange_self /-
 theorem reindexFinsetRange_self (i : ι) (h := Finset.mem_image_of_mem b (Finset.mem_univ i)) :
     b.reindexFinsetRange ⟨b i, h⟩ = b i := by
   rw [reindex_finset_range, reindex_apply, reindex_range_apply]; rfl
 #align basis.reindex_finset_range_self Basis.reindexFinsetRange_self
+-/
 
+#print Basis.reindexFinsetRange_apply /-
 @[simp]
 theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRange x = x :=
   by
   rcases x with ⟨bi, hbi⟩; rcases finset.mem_image.mp hbi with ⟨i, -, rfl⟩
   exact b.reindex_finset_range_self i
 #align basis.reindex_finset_range_apply Basis.reindexFinsetRange_apply
+-/
 
+#print Basis.reindexFinsetRange_repr_self /-
 theorem reindexFinsetRange_repr_self (i : ι) :
     b.reindexFinsetRange.repr (b i) =
       Finsupp.single ⟨b i, Finset.mem_image_of_mem b (Finset.mem_univ i)⟩ 1 :=
@@ -566,27 +657,34 @@ theorem reindexFinsetRange_repr_self (i : ι) :
   convert Finsupp.single_apply_left ((Equiv.refl M).subtypeEquiv _).symm.Injective _ _ _
   rfl
 #align basis.reindex_finset_range_repr_self Basis.reindexFinsetRange_repr_self
+-/
 
+#print Basis.reindexFinsetRange_repr /-
 @[simp]
 theorem reindexFinsetRange_repr (x : M) (i : ι)
     (h := Finset.mem_image_of_mem b (Finset.mem_univ i)) :
     b.reindexFinsetRange.repr x ⟨b i, h⟩ = b.repr x i := by simp [reindex_finset_range]
 #align basis.reindex_finset_range_repr Basis.reindexFinsetRange_repr
+-/
 
 end Fintype
 
 end Reindex
 
+#print Basis.linearIndependent /-
 protected theorem linearIndependent : LinearIndependent R b :=
   linearIndependent_iff.mpr fun l hl =>
     calc
       l = b.repr (Finsupp.total _ _ _ b l) := (b.repr_total l).symm
       _ = 0 := by rw [hl, LinearEquiv.map_zero]
 #align basis.linear_independent Basis.linearIndependent
+-/
 
+#print Basis.ne_zero /-
 protected theorem ne_zero [Nontrivial R] (i) : b i ≠ 0 :=
   b.LinearIndependent.NeZero i
 #align basis.ne_zero Basis.ne_zero
+-/
 
 #print Basis.mem_span /-
 protected theorem mem_span (x : M) : x ∈ span R (range b) :=
@@ -596,17 +694,22 @@ protected theorem mem_span (x : M) : x ∈ span R (range b) :=
 #align basis.mem_span Basis.mem_span
 -/
 
+#print Basis.span_eq /-
 protected theorem span_eq : span R (range b) = ⊤ :=
   eq_top_iff.mpr fun x _ => b.mem_span x
 #align basis.span_eq Basis.span_eq
+-/
 
+#print Basis.index_nonempty /-
 theorem index_nonempty (b : Basis ι R M) [Nontrivial M] : Nonempty ι :=
   by
   obtain ⟨x, y, ne⟩ : ∃ x y : M, x ≠ y := Nontrivial.exists_pair_ne
   obtain ⟨i, _⟩ := not_forall.mp (mt b.ext_elem_iff.2 Ne)
   exact ⟨i⟩
 #align basis.index_nonempty Basis.index_nonempty
+-/
 
+#print Basis.mem_submodule_iff /-
 /-- If the submodule `P` has a basis, `x ∈ P` iff it is a linear combination of basis vectors. -/
 theorem mem_submodule_iff {P : Submodule R M} (b : Basis ι R P) {x : M} :
     x ∈ P ↔ ∃ c : ι →₀ R, x = Finsupp.sum c fun i x => x • b i :=
@@ -616,6 +719,7 @@ theorem mem_submodule_iff {P : Submodule R M} (b : Basis ι R P) {x : M} :
       Finsupp.range_total]
   simpa only [@eq_comm _ x]
 #align basis.mem_submodule_iff Basis.mem_submodule_iff
+-/
 
 section Constr
 
@@ -643,40 +747,54 @@ def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M'
 #align basis.constr Basis.constr
 -/
 
+#print Basis.constr_def /-
 theorem constr_def (f : ι → M') :
     b.constr S f = Finsupp.total M' M' R id ∘ₗ Finsupp.lmapDomain R R f ∘ₗ ↑b.repr :=
   rfl
 #align basis.constr_def Basis.constr_def
+-/
 
+#print Basis.constr_apply /-
 theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum fun b a => a • f b :=
   by
   simp only [constr_def, LinearMap.comp_apply, Finsupp.lmapDomain_apply, Finsupp.total_apply]
   rw [Finsupp.sum_mapDomain_index] <;> simp [add_smul]
 #align basis.constr_apply Basis.constr_apply
+-/
 
+#print Basis.constr_basis /-
 @[simp]
 theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i) = f i := by
   simp [Basis.constr_apply, b.repr_self]
 #align basis.constr_basis Basis.constr_basis
+-/
 
+#print Basis.constr_eq /-
 theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)) : b.constr S g = f :=
   b.ext fun i => (b.constr_basis S g i).trans (h i)
 #align basis.constr_eq Basis.constr_eq
+-/
 
+#print Basis.constr_self /-
 theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
   b.constr_eq S fun x => rfl
 #align basis.constr_self Basis.constr_self
+-/
 
+#print Basis.constr_range /-
 theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span R (range f) := by
   rw [b.constr_def S f, LinearMap.range_comp, LinearMap.range_comp, LinearEquiv.range, ←
     Finsupp.supported_univ, Finsupp.lmapDomain_supported, ← Set.image_univ, ←
     Finsupp.span_image_eq_map_total, Set.image_id]
 #align basis.constr_range Basis.constr_range
+-/
 
+#print Basis.constr_comp /-
 @[simp]
 theorem constr_comp (f : M' →ₗ[R] M') (v : ι → M') : b.constr S (f ∘ v) = f.comp (b.constr S v) :=
   b.ext fun i => by simp only [Basis.constr_basis, LinearMap.comp_apply]
 #align basis.constr_comp Basis.constr_comp
+-/
 
 end Constr
 
@@ -694,9 +812,11 @@ protected def equiv : M ≃ₗ[R] M' :=
 #align basis.equiv Basis.equiv
 -/
 
+#print Basis.equiv_apply /-
 @[simp]
 theorem equiv_apply : b.Equiv b' e (b i) = b' (e i) := by simp [Basis.equiv]
 #align basis.equiv_apply Basis.equiv_apply
+-/
 
 #print Basis.equiv_refl /-
 @[simp]
@@ -705,21 +825,27 @@ theorem equiv_refl : b.Equiv b (Equiv.refl ι) = LinearEquiv.refl R M :=
 #align basis.equiv_refl Basis.equiv_refl
 -/
 
+#print Basis.equiv_symm /-
 @[simp]
 theorem equiv_symm : (b.Equiv b' e).symm = b'.Equiv b e.symm :=
   b'.ext' fun i => (b.Equiv b' e).Injective (by simp)
 #align basis.equiv_symm Basis.equiv_symm
+-/
 
+#print Basis.equiv_trans /-
 @[simp]
 theorem equiv_trans {ι'' : Type _} (b'' : Basis ι'' R M'') (e : ι ≃ ι') (e' : ι' ≃ ι'') :
     (b.Equiv b' e).trans (b'.Equiv b'' e') = b.Equiv b'' (e.trans e') :=
   b.ext' fun i => by simp
 #align basis.equiv_trans Basis.equiv_trans
+-/
 
+#print Basis.map_equiv /-
 @[simp]
 theorem map_equiv (b : Basis ι R M) (b' : Basis ι' R M') (e : ι ≃ ι') :
     b.map (b.Equiv b' e) = b'.reindex e.symm := by ext i; simp
 #align basis.map_equiv Basis.map_equiv
+-/
 
 end Equiv
 
@@ -727,23 +853,30 @@ section Prod
 
 variable (b' : Basis ι' R M')
 
+#print Basis.prod /-
 /-- `basis.prod` maps a `ι`-indexed basis for `M` and a `ι'`-indexed basis for `M'`
 to a `ι ⊕ ι'`-index basis for `M × M'`.
 For the specific case of `R × R`, see also `basis.fin_two_prod`. -/
 protected def prod : Basis (Sum ι ι') R (M × M') :=
   ofRepr ((b.repr.Prod b'.repr).trans (Finsupp.sumFinsuppLEquivProdFinsupp R).symm)
 #align basis.prod Basis.prod
+-/
 
+#print Basis.prod_repr_inl /-
 @[simp]
 theorem prod_repr_inl (x) (i) : (b.Prod b').repr x (Sum.inl i) = b.repr x.1 i :=
   rfl
 #align basis.prod_repr_inl Basis.prod_repr_inl
+-/
 
+#print Basis.prod_repr_inr /-
 @[simp]
 theorem prod_repr_inr (x) (i) : (b.Prod b').repr x (Sum.inr i) = b'.repr x.2 i :=
   rfl
 #align basis.prod_repr_inr Basis.prod_repr_inr
+-/
 
+#print Basis.prod_apply_inl_fst /-
 theorem prod_apply_inl_fst (i) : (b.Prod b' (Sum.inl i)).1 = b i :=
   b.repr.Injective <| by
     ext j
@@ -752,7 +885,9 @@ theorem prod_apply_inl_fst (i) : (b.Prod b' (Sum.inl i)).1 = b i :=
       Equiv.toFun_as_coe, Finsupp.fst_sumFinsuppLEquivProdFinsupp]
     apply Finsupp.single_apply_left Sum.inl_injective
 #align basis.prod_apply_inl_fst Basis.prod_apply_inl_fst
+-/
 
+#print Basis.prod_apply_inr_fst /-
 theorem prod_apply_inr_fst (i) : (b.Prod b' (Sum.inr i)).1 = 0 :=
   b.repr.Injective <| by
     ext i
@@ -762,7 +897,9 @@ theorem prod_apply_inr_fst (i) : (b.Prod b' (Sum.inr i)).1 = 0 :=
       Finsupp.zero_apply]
     apply Finsupp.single_eq_of_ne Sum.inr_ne_inl
 #align basis.prod_apply_inr_fst Basis.prod_apply_inr_fst
+-/
 
+#print Basis.prod_apply_inl_snd /-
 theorem prod_apply_inl_snd (i) : (b.Prod b' (Sum.inl i)).2 = 0 :=
   b'.repr.Injective <| by
     ext j
@@ -772,7 +909,9 @@ theorem prod_apply_inl_snd (i) : (b.Prod b' (Sum.inl i)).2 = 0 :=
       Finsupp.zero_apply]
     apply Finsupp.single_eq_of_ne Sum.inl_ne_inr
 #align basis.prod_apply_inl_snd Basis.prod_apply_inl_snd
+-/
 
+#print Basis.prod_apply_inr_snd /-
 theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
   b'.repr.Injective <| by
     ext i
@@ -781,7 +920,9 @@ theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
       Equiv.toFun_as_coe, Finsupp.snd_sumFinsuppLEquivProdFinsupp]
     apply Finsupp.single_apply_left Sum.inr_injective
 #align basis.prod_apply_inr_snd Basis.prod_apply_inr_snd
+-/
 
+#print Basis.prod_apply /-
 @[simp]
 theorem prod_apply (i) :
     b.Prod b' i = Sum.elim (LinearMap.inl R M M' ∘ b) (LinearMap.inr R M M' ∘ b') i := by
@@ -789,11 +930,13 @@ theorem prod_apply (i) :
     simp only [prod_apply_inl_fst, Sum.elim_inl, LinearMap.inl_apply, prod_apply_inr_fst,
       Sum.elim_inr, LinearMap.inr_apply, prod_apply_inl_snd, prod_apply_inr_snd, comp_app]
 #align basis.prod_apply Basis.prod_apply
+-/
 
 end Prod
 
 section NoZeroSMulDivisors
 
+#print Basis.noZeroSMulDivisors /-
 -- Can't be an instance because the basis can't be inferred.
 protected theorem noZeroSMulDivisors [NoZeroDivisors R] (b : Basis ι R M) :
     NoZeroSMulDivisors R M :=
@@ -805,12 +948,16 @@ protected theorem noZeroSMulDivisors [NoZeroDivisors R] (b : Basis ι R M) :
       rw [smul_eq_zero] at this 
       exact this.resolve_right fun hr => hx (b.repr.map_eq_zero_iff.mp hr)⟩
 #align basis.no_zero_smul_divisors Basis.noZeroSMulDivisors
+-/
 
+#print Basis.smul_eq_zero /-
 protected theorem smul_eq_zero [NoZeroDivisors R] (b : Basis ι R M) {c : R} {x : M} :
     c • x = 0 ↔ c = 0 ∨ x = 0 :=
   @smul_eq_zero _ _ _ _ _ b.NoZeroSMulDivisors _ _
 #align basis.smul_eq_zero Basis.smul_eq_zero
+-/
 
+#print Basis.eq_bot_of_rank_eq_zero /-
 theorem Basis.eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N : Submodule R M)
     (rank_eq : ∀ {m : ℕ} (v : Fin m → N), LinearIndependent R (coe ∘ v : Fin m → M) → m = 0) :
     N = ⊥ := by
@@ -825,6 +972,7 @@ theorem Basis.eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N :
     Function.comp_const, Finset.sum_singleton] at sum_eq 
   convert (b.smul_eq_zero.mp sum_eq).resolve_right x_ne
 #align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zero
+-/
 
 end NoZeroSMulDivisors
 
@@ -843,17 +991,22 @@ protected def singleton (ι R : Type _) [Unique ι] [Semiring R] : Basis ι R R
 #align basis.singleton Basis.singleton
 -/
 
+#print Basis.singleton_apply /-
 @[simp]
 theorem singleton_apply (ι R : Type _) [Unique ι] [Semiring R] (i) : Basis.singleton ι R i = 1 :=
   apply_eq_iff.mpr (by simp [Basis.singleton])
 #align basis.singleton_apply Basis.singleton_apply
+-/
 
+#print Basis.singleton_repr /-
 @[simp]
 theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
     (Basis.singleton ι R).repr x i = x := by simp [Basis.singleton, Unique.eq_default i]
 #align basis.singleton_repr Basis.singleton_repr
+-/
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (x «expr ≠ » 0) -/
+#print Basis.basis_singleton_iff /-
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
     Nonempty (Basis ι R M) ↔ ∃ (x : _) (_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y :=
@@ -880,6 +1033,7 @@ theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup
     · simp only [Finsupp.single_eq_same]
       exact (w y).choose_spec
 #align basis.basis_singleton_iff Basis.basis_singleton_iff
+-/
 
 end Singleton
 
@@ -935,6 +1089,7 @@ def Module.fintypeOfFintype (b : Basis ι R M) [Fintype R] : Fintype M :=
 #align module.fintype_of_fintype Module.fintypeOfFintype
 -/
 
+#print Module.card_fintype /-
 theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M = card R ^ card ι :=
   by
   classical exact
@@ -942,39 +1097,53 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
       card M = card (ι → R) := card_congr b.equiv_fun.to_equiv
       _ = card R ^ card ι := card_fun
 #align module.card_fintype Module.card_fintype
+-/
 
+#print Basis.equivFun_symm_apply /-
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
 @[simp]
 theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x i • b i := by
   simp [Basis.equivFun, Finsupp.total_apply, Finsupp.sum_fintype]
 #align basis.equiv_fun_symm_apply Basis.equivFun_symm_apply
+-/
 
+#print Basis.equivFun_apply /-
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
   rfl
 #align basis.equiv_fun_apply Basis.equivFun_apply
+-/
 
+#print Basis.map_equivFun /-
 @[simp]
 theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
   rfl
 #align basis.map_equiv_fun Basis.map_equivFun
+-/
 
+#print Basis.sum_equivFun /-
 theorem Basis.sum_equivFun (u : M) : ∑ i, b.equivFun u i • b i = u :=
   by
   conv_rhs => rw [← b.total_repr u]
   simp [Finsupp.total_apply, Finsupp.sum_fintype, b.equiv_fun_apply]
 #align basis.sum_equiv_fun Basis.sum_equivFun
+-/
 
+#print Basis.sum_repr /-
 theorem Basis.sum_repr (u : M) : ∑ i, b.repr u i • b i = u :=
   b.sum_equivFun u
 #align basis.sum_repr Basis.sum_repr
+-/
 
+#print Basis.equivFun_self /-
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
     b.equivFun (b i) j = if i = j then 1 else 0 := by rw [b.equiv_fun_apply, b.repr_self_apply]
 #align basis.equiv_fun_self Basis.equivFun_self
+-/
 
+#print Basis.repr_sum_self /-
 theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) = c :=
   by
   ext j
@@ -984,6 +1153,7 @@ theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) =
   · rintro i - hi; exact Finsupp.single_eq_of_ne hi
   · intros; have := Finset.mem_univ j; contradiction
 #align basis.repr_sum_self Basis.repr_sum_self
+-/
 
 #print Basis.ofEquivFun /-
 /-- Define a basis by mapping each vector `x : M` to its coordinates `e x : ι → R`,
@@ -993,12 +1163,15 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 #align basis.of_equiv_fun Basis.ofEquivFun
 -/
 
+#print Basis.ofEquivFun_repr_apply /-
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
     (Basis.ofEquivFun e).repr x i = e x i :=
   rfl
 #align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_apply
+-/
 
+#print Basis.coe_ofEquivFun /-
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
     (Basis.ofEquivFun e : ι → M) = fun i => e.symm (Function.update 0 i 1) :=
@@ -1007,7 +1180,9 @@ theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
       funext fun j => by
         simp [Basis.ofEquivFun, ← Finsupp.single_eq_pi_single, Finsupp.single_eq_update]
 #align basis.coe_of_equiv_fun Basis.coe_ofEquivFun
+-/
 
+#print Basis.ofEquivFun_equivFun /-
 @[simp]
 theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivFun = v := by
   classical
@@ -1016,24 +1191,30 @@ theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivF
   simp_rw [Function.update_apply, ite_smul]
   simp only [Finset.mem_univ, if_true, Pi.zero_apply, one_smul, Finset.sum_ite_eq', zero_smul]
 #align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFun
+-/
 
+#print Basis.equivFun_ofEquivFun /-
 @[simp]
 theorem Basis.equivFun_ofEquivFun (e : M ≃ₗ[R] ι → R) : (Basis.ofEquivFun e).equivFun = e :=
   by
   ext j
   simp_rw [Basis.equivFun_apply, Basis.ofEquivFun_repr_apply]
 #align basis.equiv_fun_of_equiv_fun Basis.equivFun_ofEquivFun
+-/
 
 variable (S : Type _) [Semiring S] [Module S M']
 
 variable [SMulCommClass R S M']
 
+#print Basis.constr_apply_fintype /-
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
     (b.constr S f : M → M') x = ∑ i, b.equivFun x i • f i := by
   simp [b.constr_apply, b.equiv_fun_apply, Finsupp.sum_fintype]
 #align basis.constr_apply_fintype Basis.constr_apply_fintype
+-/
 
+#print Basis.mem_submodule_iff' /-
 /-- If the submodule `P` has a finite basis,
 `x ∈ P` iff it is a linear combination of basis vectors. -/
 theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M} :
@@ -1042,10 +1223,13 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
     Finsupp.equivFunOnFinite.exists_congr_left.trans <|
       exists_congr fun c => by simp [Finsupp.sum_fintype]
 #align basis.mem_submodule_iff' Basis.mem_submodule_iff'
+-/
 
+#print Basis.coord_equivFun_symm /-
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
 #align basis.coord_equiv_fun_symm Basis.coord_equivFun_symm
+-/
 
 end Fintype
 
@@ -1087,18 +1271,23 @@ def equiv' (f : M → M') (g : M' → M) (hf : ∀ i, f (b i) ∈ range b') (hg
 #align basis.equiv' Basis.equiv'
 -/
 
+#print Basis.equiv'_apply /-
 @[simp]
 theorem equiv'_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι) :
     b.equiv' b' f g hf hg hgf hfg (b i) = f (b i) :=
   b.constr_basis R _ _
 #align basis.equiv'_apply Basis.equiv'_apply
+-/
 
+#print Basis.equiv'_symm_apply /-
 @[simp]
 theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι') :
     (b.equiv' b' f g hf hg hgf hfg).symm (b' i) = g (b' i) :=
   b'.constr_basis R _ _
 #align basis.equiv'_symm_apply Basis.equiv'_symm_apply
+-/
 
+#print Basis.sum_repr_mul_repr /-
 theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i : ι) :
     ∑ j : ι', b.repr (b' j) i * b'.repr x j = b.repr x i :=
   by
@@ -1107,6 +1296,7 @@ theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i :
   refine' Finset.sum_congr rfl fun j _ => _
   rw [Finsupp.smul_apply, smul_eq_mul, mul_comm]
 #align basis.sum_repr_mul_repr Basis.sum_repr_mul_repr
+-/
 
 end Basis
 
@@ -1128,6 +1318,7 @@ variable (b : Basis ι R M)
 
 namespace Basis
 
+#print Basis.maximal /-
 /-- Any basis is a maximal linear independent set.
 -/
 theorem maximal [Nontrivial R] (b : Basis ι R M) : b.LinearIndependent.Maximal := fun w hi h =>
@@ -1158,11 +1349,13 @@ theorem maximal [Nontrivial R] (b : Basis ι R M) : b.LinearIndependent.Maximal
   simp only [embedding.coe_fn_mk, Subtype.mk_eq_mk, ← r] at W 
   apply q ⟨j, W⟩
 #align basis.maximal Basis.maximal
+-/
 
 section Mk
 
 variable (hli : LinearIndependent R v) (hsp : ⊤ ≤ span R (range v))
 
+#print Basis.mk /-
 /-- A linear independent family of vectors spanning the whole module is a basis. -/
 protected noncomputable def mk : Basis ι R M :=
   Basis.ofRepr
@@ -1174,36 +1367,48 @@ protected noncomputable def mk : Basis ι R M :=
       left_inv := fun x => hli.total_repr ⟨x, _⟩
       right_inv := fun x => hli.repr_eq rfl }
 #align basis.mk Basis.mk
+-/
 
+#print Basis.mk_repr /-
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
   rfl
 #align basis.mk_repr Basis.mk_repr
+-/
 
+#print Basis.mk_apply /-
 theorem mk_apply (i : ι) : Basis.mk hli hsp i = v i :=
   show Finsupp.total _ _ _ v _ = v i by simp
 #align basis.mk_apply Basis.mk_apply
+-/
 
+#print Basis.coe_mk /-
 @[simp]
 theorem coe_mk : ⇑(Basis.mk hli hsp) = v :=
   funext (mk_apply _ _)
 #align basis.coe_mk Basis.coe_mk
+-/
 
 variable {hli hsp}
 
+#print Basis.mk_coord_apply_eq /-
 /-- Given a basis, the `i`th element of the dual basis evaluates to 1 on the `i`th element of the
 basis. -/
 theorem mk_coord_apply_eq (i : ι) : (Basis.mk hli hsp).Coord i (v i) = 1 :=
   show hli.repr ⟨v i, Submodule.subset_span (mem_range_self i)⟩ i = 1 by simp [hli.repr_eq_single i]
 #align basis.mk_coord_apply_eq Basis.mk_coord_apply_eq
+-/
 
+#print Basis.mk_coord_apply_ne /-
 /-- Given a basis, the `i`th element of the dual basis evaluates to 0 on the `j`th element of the
 basis if `j ≠ i`. -/
 theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i (v j) = 0 :=
   show hli.repr ⟨v j, Submodule.subset_span (mem_range_self j)⟩ i = 0 by
     simp [hli.repr_eq_single j, h]
 #align basis.mk_coord_apply_ne Basis.mk_coord_apply_ne
+-/
 
+#print Basis.mk_coord_apply /-
 /-- Given a basis, the `i`th element of the dual basis evaluates to the Kronecker delta on the
 `j`th element of the basis. -/
 theorem mk_coord_apply [DecidableEq ι] {i j : ι} :
@@ -1213,6 +1418,7 @@ theorem mk_coord_apply [DecidableEq ι] {i j : ι} :
   · simp only [h, if_true, eq_self_iff_true, mk_coord_apply_eq i]
   · simp only [h, if_false, mk_coord_apply_ne h]
 #align basis.mk_coord_apply Basis.mk_coord_apply
+-/
 
 end Mk
 
@@ -1252,6 +1458,7 @@ protected theorem span_apply (i : ι) : (Basis.span hli i : M) = v i :=
 
 end Span
 
+#print Basis.groupSmul_span_eq_top /-
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
@@ -1265,7 +1472,9 @@ theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Dis
   have : ((w i)⁻¹ • 1 : R) • w i • v i ∈ p := p.smul_mem ((w i)⁻¹ • 1 : R) (hp ⟨i, rfl⟩)
   rwa [smul_one_smul, inv_smul_smul] at this 
 #align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_top
+-/
 
+#print Basis.groupSmul /-
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` are elements of a group,
 `group_smul` provides the basis corresponding to `w • v`. -/
 def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
@@ -1273,29 +1482,39 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
   @Basis.mk ι R M (w • v) _ _ _ (v.LinearIndependent.group_smul w)
     (groupSmul_span_eq_top v.span_eq).ge
 #align basis.group_smul Basis.groupSmul
+-/
 
+#print Basis.groupSmul_apply /-
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
     v.group_smul w i = (w • v : ι → M) i :=
   mk_apply (v.LinearIndependent.group_smul w) (groupSmul_span_eq_top v.span_eq).ge i
 #align basis.group_smul_apply Basis.groupSmul_apply
+-/
 
+#print Basis.units_smul_span_eq_top /-
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
   groupSmul_span_eq_top hv
 #align basis.units_smul_span_eq_top Basis.units_smul_span_eq_top
+-/
 
+#print Basis.unitsSMul /-
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` is a unit, `smul_of_is_unit`
 provides the basis corresponding to `w • v`. -/
 def unitsSMul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
   @Basis.mk ι R M (w • v) _ _ _ (v.LinearIndependent.units_smul w)
     (units_smul_span_eq_top v.span_eq).ge
 #align basis.units_smul Basis.unitsSMul
+-/
 
+#print Basis.unitsSMul_apply /-
 theorem unitsSMul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_smul w i = w i • v i :=
   mk_apply (v.LinearIndependent.units_smul w) (units_smul_span_eq_top v.span_eq).ge i
 #align basis.units_smul_apply Basis.unitsSMul_apply
+-/
 
+#print Basis.coord_unitsSMul /-
 @[simp]
 theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     (e.units_smul w).Coord i = (w i)⁻¹ • e.Coord i := by
@@ -1311,25 +1530,33 @@ theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
   · simp [h]
   · simp
 #align basis.coord_units_smul Basis.coord_unitsSMul
+-/
 
+#print Basis.repr_unitsSMul /-
 @[simp]
 theorem repr_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
     (e.units_smul w).repr v i = (w i)⁻¹ • e.repr v i :=
   congr_arg (fun f : M →ₗ[R₂] R₂ => f v) (e.coord_unitsSMul w i)
 #align basis.repr_units_smul Basis.repr_unitsSMul
+-/
 
+#print Basis.isUnitSMul /-
 /-- A version of `smul_of_units` that uses `is_unit`. -/
 def isUnitSMul (v : Basis ι R M) {w : ι → R} (hw : ∀ i, IsUnit (w i)) : Basis ι R M :=
   unitsSMul v fun i => (hw i).Unit
 #align basis.is_unit_smul Basis.isUnitSMul
+-/
 
+#print Basis.isUnitSMul_apply /-
 theorem isUnitSMul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (w i)) (i : ι) :
     v.isUnitSMul hw i = w i • v i :=
   unitsSMul_apply i
 #align basis.is_unit_smul_apply Basis.isUnitSMul_apply
+-/
 
 section Fin
 
+#print Basis.mkFinCons /-
 /-- Let `b` be a basis for a submodule `N` of `M`. If `y : M` is linear independent of `N`
 and `y` and `N` together span the whole of `M`, then there is a basis for `M`
 whose basis vectors are given by `fin.cons y b`. -/
@@ -1343,14 +1570,18 @@ noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fi
       rintro c ⟨x, hx⟩ hc; rw [span_b] at hx ; exact hli c x hx hc)
     fun x _ => by rw [Fin.range_cons, Submodule.mem_span_insert', span_b]; exact hsp x
 #align basis.mk_fin_cons Basis.mkFinCons
+-/
 
+#print Basis.coe_mkFinCons /-
 @[simp]
 theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R N)
     (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0) (hsp : ∀ z : M, ∃ c : R, z + c • y ∈ N) :
     (mkFinCons y b hli hsp : Fin (n + 1) → M) = Fin.cons y (coe ∘ b) :=
   coe_mk _ _
 #align basis.coe_mk_fin_cons Basis.coe_mkFinCons
+-/
 
+#print Basis.mkFinConsOfLe /-
 /-- Let `b` be a basis for a submodule `N ≤ O`. If `y ∈ O` is linear independent of `N`
 and `y` and `N` together span the whole of `O`, then there is a basis for `O`
 whose basis vectors are given by `fin.cons y b`. -/
@@ -1360,7 +1591,9 @@ noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y
   mkFinCons ⟨y, yO⟩ (b.map (Submodule.comapSubtypeEquivOfLe hNO).symm)
     (fun c x hc hx => hli c x (Submodule.mem_comap.mp hc) (congr_arg coe hx)) fun z => hsp z z.2
 #align basis.mk_fin_cons_of_le Basis.mkFinConsOfLe
+-/
 
+#print Basis.coe_mkFinConsOfLe /-
 @[simp]
 theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
     (hNO : N ≤ O) (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0)
@@ -1369,27 +1602,36 @@ theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
       Fin.cons ⟨y, yO⟩ (Submodule.ofLe hNO ∘ b) :=
   coe_mkFinCons _ _ _ _
 #align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLe
+-/
 
+#print Basis.finTwoProd /-
 /-- The basis of `R × R` given by the two vectors `(1, 0)` and `(0, 1)`. -/
 protected def finTwoProd (R : Type _) [Semiring R] : Basis (Fin 2) R (R × R) :=
   Basis.ofEquivFun (LinearEquiv.finTwoArrow R R).symm
 #align basis.fin_two_prod Basis.finTwoProd
+-/
 
+#print Basis.finTwoProd_zero /-
 @[simp]
 theorem finTwoProd_zero (R : Type _) [Semiring R] : Basis.finTwoProd R 0 = (1, 0) := by
   simp [Basis.finTwoProd]
 #align basis.fin_two_prod_zero Basis.finTwoProd_zero
+-/
 
+#print Basis.finTwoProd_one /-
 @[simp]
 theorem finTwoProd_one (R : Type _) [Semiring R] : Basis.finTwoProd R 1 = (0, 1) := by
   simp [Basis.finTwoProd]
 #align basis.fin_two_prod_one Basis.finTwoProd_one
+-/
 
+#print Basis.coe_finTwoProd_repr /-
 @[simp]
 theorem coe_finTwoProd_repr {R : Type _} [Semiring R] (x : R × R) :
     ⇑((Basis.finTwoProd R).repr x) = ![x.fst, x.snd] :=
   rfl
 #align basis.coe_fin_two_prod_repr Basis.coe_finTwoProd_repr
+-/
 
 end Fin
 
@@ -1403,6 +1645,7 @@ variable [Ring R] [IsDomain R]
 
 variable [AddCommGroup M] [Module R M] {b : ι → M}
 
+#print Submodule.inductionOnRankAux /-
 /-- If `N` is a submodule with finite rank, do induction on adjoining a linear independent
 element to a submodule. -/
 def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort _)
@@ -1433,6 +1676,7 @@ def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort
     rintro _ ⟨z, rfl⟩
     exact (v z).2
 #align submodule.induction_on_rank_aux Submodule.inductionOnRankAux
+-/
 
 end Induction
 
@@ -1442,8 +1686,6 @@ variable [DivisionRing K] [AddCommGroup V] [AddCommGroup V'] [Module K V] [Modul
 
 variable {v : ι → V} {s t : Set V} {x y z : V}
 
-include K
-
 open Submodule
 
 namespace Basis
@@ -1459,21 +1701,28 @@ noncomputable def extend (hs : LinearIndependent K (coe : s → V)) : Basis _ K
 #align basis.extend Basis.extend
 -/
 
+#print Basis.extend_apply_self /-
 theorem extend_apply_self (hs : LinearIndependent K (coe : s → V)) (x : hs.extend _) :
     Basis.extend hs x = x :=
   Basis.mk_apply _ _ _
 #align basis.extend_apply_self Basis.extend_apply_self
+-/
 
+#print Basis.coe_extend /-
 @[simp]
 theorem coe_extend (hs : LinearIndependent K (coe : s → V)) : ⇑(Basis.extend hs) = coe :=
   funext (extend_apply_self hs)
 #align basis.coe_extend Basis.coe_extend
+-/
 
+#print Basis.range_extend /-
 theorem range_extend (hs : LinearIndependent K (coe : s → V)) :
     range (Basis.extend hs) = hs.extend (subset_univ _) := by
   rw [coe_extend, Subtype.range_coe_subtype, set_of_mem_eq]
 #align basis.range_extend Basis.range_extend
+-/
 
+#print Basis.sumExtend /-
 /-- If `v` is a linear independent family of vectors, extend it to a basis indexed by a sum type. -/
 noncomputable def sumExtend (hs : LinearIndependent K v) : Basis (Sum ι _) K V :=
   let s := Set.range v
@@ -1487,11 +1736,14 @@ noncomputable def sumExtend (hs : LinearIndependent K v) : Basis (Sum ι _) K V
           haveI := Classical.decPred (· ∈ s)
           Equiv.Set.sumDiffSubset (hs.to_subtype_range.subset_extend _)
 #align basis.sum_extend Basis.sumExtend
+-/
 
+#print Basis.subset_extend /-
 theorem subset_extend {s : Set V} (hs : LinearIndependent K (coe : s → V)) :
     s ⊆ hs.extend (Set.subset_univ _) :=
   hs.subset_extend _
 #align basis.subset_extend Basis.subset_extend
+-/
 
 section
 
@@ -1511,27 +1763,37 @@ noncomputable def ofVectorSpace : Basis (ofVectorSpaceIndex K V) K V :=
 #align basis.of_vector_space Basis.ofVectorSpace
 -/
 
+#print Basis.ofVectorSpace_apply_self /-
 theorem ofVectorSpace_apply_self (x : ofVectorSpaceIndex K V) : ofVectorSpace K V x = x :=
   Basis.mk_apply _ _ _
 #align basis.of_vector_space_apply_self Basis.ofVectorSpace_apply_self
+-/
 
+#print Basis.coe_ofVectorSpace /-
 @[simp]
 theorem coe_ofVectorSpace : ⇑(ofVectorSpace K V) = coe :=
   funext fun x => ofVectorSpace_apply_self K V x
 #align basis.coe_of_vector_space Basis.coe_ofVectorSpace
+-/
 
+#print Basis.ofVectorSpaceIndex.linearIndependent /-
 theorem ofVectorSpaceIndex.linearIndependent :
     LinearIndependent K (coe : ofVectorSpaceIndex K V → V) := by
   convert (of_vector_space K V).LinearIndependent; ext x; rw [of_vector_space_apply_self]
 #align basis.of_vector_space_index.linear_independent Basis.ofVectorSpaceIndex.linearIndependent
+-/
 
+#print Basis.range_ofVectorSpace /-
 theorem range_ofVectorSpace : range (ofVectorSpace K V) = ofVectorSpaceIndex K V :=
   range_extend _
 #align basis.range_of_vector_space Basis.range_ofVectorSpace
+-/
 
+#print Basis.exists_basis /-
 theorem exists_basis : ∃ s : Set V, Nonempty (Basis s K V) :=
   ⟨ofVectorSpaceIndex K V, ⟨ofVectorSpace K V⟩⟩
 #align basis.exists_basis Basis.exists_basis
+-/
 
 end
 
@@ -1543,15 +1805,18 @@ open Fintype
 
 variable (K V)
 
+#print VectorSpace.card_fintype /-
 theorem VectorSpace.card_fintype [Fintype K] [Fintype V] : ∃ n : ℕ, card V = card K ^ n := by
   classical exact
     ⟨card (Basis.ofVectorSpaceIndex K V), Module.card_fintype (Basis.ofVectorSpace K V)⟩
 #align vector_space.card_fintype VectorSpace.card_fintype
+-/
 
 section AtomsOfSubmoduleLattice
 
 variable {K V}
 
+#print nonzero_span_atom /-
 /-- For a module over a division ring, the span of a nonzero element is an atom of the
 lattice of submodules. -/
 theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodule K V) :=
@@ -1567,7 +1832,9 @@ theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodul
     apply_fun fun x => a⁻¹ • x at ha 
     simp_rw [← mul_smul, inv_mul_cancel h, one_smul, ha] at *; exact smul_mem T _ hs
 #align nonzero_span_atom nonzero_span_atom
+-/
 
+#print atom_iff_nonzero_span /-
 /-- The atoms of the lattice of submodules of a module over a division ring are the
 submodules equal to the span of a nonzero element of the module. -/
 theorem atom_iff_nonzero_span (W : Submodule K V) :
@@ -1583,6 +1850,7 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
     exact hv (h ⟨(span_singleton_le_iff_mem v W).2 hW, Ne.symm HEq⟩)
   · rcases h with ⟨v, ⟨hv, rfl⟩⟩; exact nonzero_span_atom v hv
 #align atom_iff_nonzero_span atom_iff_nonzero_span
+-/
 
 /-- The lattice of submodules of a module over a division ring is atomistic. -/
 instance : IsAtomistic (Submodule K V)
@@ -1596,6 +1864,7 @@ end AtomsOfSubmoduleLattice
 
 variable {K V}
 
+#print LinearMap.exists_leftInverse_of_injective /-
 theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj : f.ker = ⊥) :
     ∃ g : V' →ₗ[K] V, g.comp f = LinearMap.id :=
   by
@@ -1621,11 +1890,14 @@ theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj :
   rw [Basis.ofVectorSpace_apply_self, fb_eq, hC.constr_basis]
   exact left_inverse_inv_fun (LinearMap.ker_eq_bot.1 hf_inj) _
 #align linear_map.exists_left_inverse_of_injective LinearMap.exists_leftInverse_of_injective
+-/
 
+#print Submodule.exists_isCompl /-
 theorem Submodule.exists_isCompl (p : Submodule K V) : ∃ q : Submodule K V, IsCompl p q :=
   let ⟨f, hf⟩ := p.Subtype.exists_leftInverse_of_injective p.ker_subtype
   ⟨f.ker, LinearMap.isCompl_of_proj <| LinearMap.ext_iff.1 hf⟩
 #align submodule.exists_is_compl Submodule.exists_isCompl
+-/
 
 #print Module.Submodule.complementedLattice /-
 instance Module.Submodule.complementedLattice : ComplementedLattice (Submodule K V) :=
@@ -1633,6 +1905,7 @@ instance Module.Submodule.complementedLattice : ComplementedLattice (Submodule K
 #align module.submodule.complemented_lattice Module.Submodule.complementedLattice
 -/
 
+#print LinearMap.exists_rightInverse_of_surjective /-
 theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_surj : f.range = ⊤) :
     ∃ g : V' →ₗ[K] V, f.comp g = LinearMap.id :=
   by
@@ -1644,7 +1917,9 @@ theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_sur
   rw [LinearMap.comp_apply, hC.constr_basis]
   simp [right_inverse_inv_fun (LinearMap.range_eq_top.1 hf_surj) c]
 #align linear_map.exists_right_inverse_of_surjective LinearMap.exists_rightInverse_of_surjective
+-/
 
+#print LinearMap.exists_extend /-
 /-- Any linear map `f : p →ₗ[K] V'` defined on a subspace `p` can be extended to the whole
 space. -/
 theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
@@ -1652,10 +1927,12 @@ theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
   let ⟨g, hg⟩ := p.Subtype.exists_leftInverse_of_injective p.ker_subtype
   ⟨f.comp g, by rw [LinearMap.comp_assoc, hg, f.comp_id]⟩
 #align linear_map.exists_extend LinearMap.exists_extend
+-/
 
 open Submodule LinearMap
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
+#print Submodule.exists_le_ker_of_lt_top /-
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
 theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
@@ -1671,13 +1948,16 @@ theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
     have := LinearPMap.supSpanSingleton_apply_mk ⟨p, 0⟩ v (1 : K) hpv x hx 0
     simpa using (LinearMap.congr_fun hf _).trans this
 #align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_top
+-/
 
+#print quotient_prod_linearEquiv /-
 theorem quotient_prod_linearEquiv (p : Submodule K V) : Nonempty (((V ⧸ p) × p) ≃ₗ[K] V) :=
   let ⟨q, hq⟩ := p.exists_isCompl
   Nonempty.intro <|
     ((quotientEquivOfIsCompl p q hq).Prod (LinearEquiv.refl _ _)).trans
       (prodEquivOfIsCompl q p hq.symm)
 #align quotient_prod_linear_equiv quotient_prod_linearEquiv
+-/
 
 end DivisionRing
 
@@ -1693,17 +1973,22 @@ variable (R)
 
 open Submodule
 
+#print Basis.restrictScalars /-
 /-- Let `b` be a `S`-basis of `M`. Let `R` be a comm_ring such that `algebra R S` with no zero
 smul divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
 noncomputable def Basis.restrictScalars : Basis ι R (span R (Set.range b)) :=
   Basis.span (b.LinearIndependent.restrictScalars (smul_left_injective R one_ne_zero))
 #align basis.restrict_scalars Basis.restrictScalars
+-/
 
+#print Basis.restrictScalars_apply /-
 @[simp]
 theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i := by
   simp only [Basis.restrictScalars, Basis.span_apply]
 #align basis.restrict_scalars_apply Basis.restrictScalars_apply
+-/
 
+#print Basis.restrictScalars_repr_apply /-
 @[simp]
 theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
     algebraMap R S ((b.restrictScalars R).repr m i) = b.repr m i :=
@@ -1718,7 +2003,9 @@ theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
     Algebra.linearMap_apply, LinearMap.domRestrict_apply, LinearEquiv.coe_coe,
     Basis.restrictScalars_apply, LinearMap.coe_restrictScalars]
 #align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_apply
+-/
 
+#print Basis.mem_span_iff_repr_mem /-
 /-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
 coordinates of `m` on the basis `b` are in `R` (see `basis.mem_span` for the case `R = S`). -/
 theorem Basis.mem_span_iff_repr_mem (m : M) :
@@ -1733,6 +2020,7 @@ theorem Basis.mem_span_iff_repr_mem (m : M) :
   simp_rw [← h, algebraMap_smul]
   exact smul_mem _ _ (subset_span (Set.mem_range_self i))
 #align basis.mem_span_iff_repr_mem Basis.mem_span_iff_repr_mem
+-/
 
 end RestrictScalars
 
Diff
@@ -960,13 +960,13 @@ theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.tr
   rfl
 #align basis.map_equiv_fun Basis.map_equivFun
 
-theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
+theorem Basis.sum_equivFun (u : M) : ∑ i, b.equivFun u i • b i = u :=
   by
   conv_rhs => rw [← b.total_repr u]
   simp [Finsupp.total_apply, Finsupp.sum_fintype, b.equiv_fun_apply]
 #align basis.sum_equiv_fun Basis.sum_equivFun
 
-theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
+theorem Basis.sum_repr (u : M) : ∑ i, b.repr u i • b i = u :=
   b.sum_equivFun u
 #align basis.sum_repr Basis.sum_repr
 
@@ -1100,7 +1100,7 @@ theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι'
 #align basis.equiv'_symm_apply Basis.equiv'_symm_apply
 
 theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i : ι) :
-    (∑ j : ι', b.repr (b' j) i * b'.repr x j) = b.repr x i :=
+    ∑ j : ι', b.repr (b' j) i * b'.repr x j = b.repr x i :=
   by
   conv_rhs => rw [← b'.sum_repr x]
   simp_rw [LinearEquiv.map_sum, LinearEquiv.map_smul, Finset.sum_apply']
Diff
@@ -163,7 +163,6 @@ theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
     b.repr.symm (Finsupp.single i c) = b.repr.symm (c • Finsupp.single i 1) := by
       rw [Finsupp.smul_single', mul_one]
     _ = c • b i := by rw [LinearEquiv.map_smul, repr_symm_single_one]
-    
 #align basis.repr_symm_single Basis.repr_symm_single
 
 @[simp]
@@ -182,7 +181,6 @@ theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
     _ = ∑ i in v.support, b.repr.symm (Finsupp.single i (v i)) := by
       rw [Finsupp.sum, LinearEquiv.map_sum]
     _ = Finsupp.total ι M R b v := by simp [repr_symm_single, Finsupp.total_apply, Finsupp.sum]
-    
 #align basis.repr_symm_apply Basis.repr_symm_apply
 
 @[simp]
@@ -350,7 +348,6 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
   calc
     b.repr x i = f_i x := by rw [← this]; rfl
     _ = f x i := rfl
-    
 #align basis.repr_apply_eq Basis.repr_apply_eq
 
 /-- Two bases are equal if they assign the same coordinates. -/
@@ -504,7 +501,6 @@ theorem reindexRange_repr_self (i : ι) :
     b.reindexRange.repr (b i) = b.reindexRange.repr (b.reindexRange ⟨b i, mem_range_self i⟩) :=
       congr_arg _ (b.reindexRange_self _ _).symm
     _ = Finsupp.single ⟨b i, mem_range_self i⟩ 1 := b.reindexRange.repr_self _
-    
 #align basis.reindex_range_repr_self Basis.reindexRange_repr_self
 
 @[simp]
@@ -586,7 +582,6 @@ protected theorem linearIndependent : LinearIndependent R b :=
     calc
       l = b.repr (Finsupp.total _ _ _ b l) := (b.repr_total l).symm
       _ = 0 := by rw [hl, LinearEquiv.map_zero]
-      
 #align basis.linear_independent Basis.linearIndependent
 
 protected theorem ne_zero [Nontrivial R] (i) : b i ≠ 0 :=
@@ -946,7 +941,6 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
     calc
       card M = card (ι → R) := card_congr b.equiv_fun.to_equiv
       _ = card R ^ card ι := card_fun
-      
 #align module.card_fintype Module.card_fintype
 
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
@@ -1492,7 +1486,6 @@ noncomputable def sumExtend (hs : LinearIndependent K v) : Basis (Sum ι _) K V
         _ ≃ b :=
           haveI := Classical.decPred (· ∈ s)
           Equiv.Set.sumDiffSubset (hs.to_subtype_range.subset_extend _)
-        
 #align basis.sum_extend Basis.sumExtend
 
 theorem subset_extend {s : Set V} (hs : LinearIndependent K (coe : s → V)) :
Diff
@@ -858,7 +858,7 @@ theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
     (Basis.singleton ι R).repr x i = x := by simp [Basis.singleton, Unique.eq_default i]
 #align basis.singleton_repr Basis.singleton_repr
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (x «expr ≠ » 0) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (x «expr ≠ » 0) -/
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
     Nonempty (Basis ι R M) ↔ ∃ (x : _) (_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y :=
@@ -1662,7 +1662,7 @@ theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
 
 open Submodule LinearMap
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
 theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
Diff
@@ -828,7 +828,7 @@ theorem Basis.eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N :
   cases i
   simp only [Function.const_apply, Fin.default_eq_zero, Submodule.coe_mk, Finset.univ_unique,
     Function.comp_const, Finset.sum_singleton] at sum_eq 
-  convert(b.smul_eq_zero.mp sum_eq).resolve_right x_ne
+  convert (b.smul_eq_zero.mp sum_eq).resolve_right x_ne
 #align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zero
 
 end NoZeroSMulDivisors
@@ -943,10 +943,10 @@ def Module.fintypeOfFintype (b : Basis ι R M) [Fintype R] : Fintype M :=
 theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M = card R ^ card ι :=
   by
   classical exact
-      calc
-        card M = card (ι → R) := card_congr b.equiv_fun.to_equiv
-        _ = card R ^ card ι := card_fun
-        
+    calc
+      card M = card (ι → R) := card_congr b.equiv_fun.to_equiv
+      _ = card R ^ card ι := card_fun
+      
 #align module.card_fintype Module.card_fintype
 
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
@@ -1017,10 +1017,10 @@ theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
 @[simp]
 theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivFun = v := by
   classical
-    ext j
-    simp only [Basis.equivFun_symm_apply, Basis.coe_ofEquivFun]
-    simp_rw [Function.update_apply, ite_smul]
-    simp only [Finset.mem_univ, if_true, Pi.zero_apply, one_smul, Finset.sum_ite_eq', zero_smul]
+  ext j
+  simp only [Basis.equivFun_symm_apply, Basis.coe_ofEquivFun]
+  simp_rw [Function.update_apply, ite_smul]
+  simp only [Finset.mem_univ, if_true, Pi.zero_apply, one_smul, Finset.sum_ite_eq', zero_smul]
 #align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFun
 
 @[simp]
@@ -1306,16 +1306,16 @@ theorem unitsSMul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_s
 theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     (e.units_smul w).Coord i = (w i)⁻¹ • e.Coord i := by
   classical
-    apply e.ext
-    intro j
-    trans ((e.units_smul w).Coord i) ((w j)⁻¹ • (e.units_smul w) j)
-    · congr
-      simp [Basis.unitsSMul, ← mul_smul]
-    simp only [Basis.coord_apply, LinearMap.smul_apply, Basis.repr_self, Units.smul_def,
-      SMulHomClass.map_smul, Finsupp.single_apply]
-    split_ifs with h h
-    · simp [h]
-    · simp
+  apply e.ext
+  intro j
+  trans ((e.units_smul w).Coord i) ((w j)⁻¹ • (e.units_smul w) j)
+  · congr
+    simp [Basis.unitsSMul, ← mul_smul]
+  simp only [Basis.coord_apply, LinearMap.smul_apply, Basis.repr_self, Units.smul_def,
+    SMulHomClass.map_smul, Finsupp.single_apply]
+  split_ifs with h h
+  · simp [h]
+  · simp
 #align basis.coord_units_smul Basis.coord_unitsSMul
 
 @[simp]
@@ -1529,7 +1529,7 @@ theorem coe_ofVectorSpace : ⇑(ofVectorSpace K V) = coe :=
 
 theorem ofVectorSpaceIndex.linearIndependent :
     LinearIndependent K (coe : ofVectorSpaceIndex K V → V) := by
-  convert(of_vector_space K V).LinearIndependent; ext x; rw [of_vector_space_apply_self]
+  convert (of_vector_space K V).LinearIndependent; ext x; rw [of_vector_space_apply_self]
 #align basis.of_vector_space_index.linear_independent Basis.ofVectorSpaceIndex.linearIndependent
 
 theorem range_ofVectorSpace : range (ofVectorSpace K V) = ofVectorSpaceIndex K V :=
@@ -1552,7 +1552,7 @@ variable (K V)
 
 theorem VectorSpace.card_fintype [Fintype K] [Fintype V] : ∃ n : ℕ, card V = card K ^ n := by
   classical exact
-      ⟨card (Basis.ofVectorSpaceIndex K V), Module.card_fintype (Basis.ofVectorSpace K V)⟩
+    ⟨card (Basis.ofVectorSpaceIndex K V), Module.card_fintype (Basis.ofVectorSpace K V)⟩
 #align vector_space.card_fintype VectorSpace.card_fintype
 
 section AtomsOfSubmoduleLattice
@@ -1571,7 +1571,7 @@ theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodul
     rcases h with ⟨s, ⟨hs, hz⟩⟩
     cases' mem_span_singleton.1 (hT.1 hs) with a ha
     have h : a ≠ 0 := by intro h; rw [h, zero_smul] at ha ; exact hz ha.symm
-    apply_fun fun x => a⁻¹ • x  at ha 
+    apply_fun fun x => a⁻¹ • x at ha 
     simp_rw [← mul_smul, inv_mul_cancel h, one_smul, ha] at *; exact smul_mem T _ hs
 #align nonzero_span_atom nonzero_span_atom
 
@@ -1595,7 +1595,7 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
 instance : IsAtomistic (Submodule K V)
     where eq_sSup_atoms := by
     intro W
-    use { T : Submodule K V | ∃ (v : V) (hv : v ∈ W) (hz : v ≠ 0), T = span K {v} }
+    use {T : Submodule K V | ∃ (v : V) (hv : v ∈ W) (hz : v ≠ 0), T = span K {v}}
     refine' ⟨submodule_eq_Sup_le_nonzero_spans W, _⟩
     rintro _ ⟨w, ⟨_, ⟨hw, rfl⟩⟩⟩; exact nonzero_span_atom w hw
 
Diff
@@ -139,7 +139,7 @@ instance funLike : FunLike (Basis ι R M) ι fun _ => M
           rw [← Finsupp.sum_single x, map_finsupp_sum, map_finsupp_sum]
           congr with (i r)
           have := congr_fun h i
-          dsimp at this
+          dsimp at this 
           rw [← mul_one r, ← Finsupp.smul_single', LinearEquiv.map_smul, LinearEquiv.map_smul,
             this])
 #align basis.fun_like Basis.funLike
@@ -805,9 +805,9 @@ protected theorem noZeroSMulDivisors [NoZeroDivisors R] (b : Basis ι R M) :
   ⟨fun c x hcx =>
     or_iff_not_imp_right.mpr fun hx =>
       by
-      rw [← b.total_repr x, ← LinearMap.map_smul] at hcx
+      rw [← b.total_repr x, ← LinearMap.map_smul] at hcx 
       have := linear_independent_iff.mp b.linear_independent (c • b.repr x) hcx
-      rw [smul_eq_zero] at this
+      rw [smul_eq_zero] at this 
       exact this.resolve_right fun hr => hx (b.repr.map_eq_zero_iff.mp hr)⟩
 #align basis.no_zero_smul_divisors Basis.noZeroSMulDivisors
 
@@ -827,7 +827,7 @@ theorem Basis.eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N :
   rintro g sum_eq i
   cases i
   simp only [Function.const_apply, Fin.default_eq_zero, Submodule.coe_mk, Finset.univ_unique,
-    Function.comp_const, Finset.sum_singleton] at sum_eq
+    Function.comp_const, Finset.sum_singleton] at sum_eq 
   convert(b.smul_eq_zero.mp sum_eq).resolve_right x_ne
 #align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zero
 
@@ -861,7 +861,7 @@ theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (x «expr ≠ » 0) -/
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
-    Nonempty (Basis ι R M) ↔ ∃ (x : _)(_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y :=
+    Nonempty (Basis ι R M) ↔ ∃ (x : _) (_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y :=
   by
   fconstructor
   · rintro ⟨b⟩
@@ -988,7 +988,7 @@ theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) =
     Finset.sum_apply']
   rw [Finset.sum_eq_single j, Finsupp.single_eq_same]
   · rintro i - hi; exact Finsupp.single_eq_of_ne hi
-  · intros ; have := Finset.mem_univ j; contradiction
+  · intros; have := Finset.mem_univ j; contradiction
 #align basis.repr_sum_self Basis.repr_sum_self
 
 #print Basis.ofEquivFun /-
@@ -1151,17 +1151,17 @@ theorem maximal [Nontrivial R] (b : Basis ι R M) : b.LinearIndependent.Maximal
     ⟨fun i => ⟨b i, h ⟨i, rfl⟩⟩, fun i i' r =>
       b.injective (by simpa only [Subtype.mk_eq_mk] using r)⟩
   have r : ∀ i, b i = u i := fun i => rfl
-  simp_rw [Finsupp.total_apply, r] at e
+  simp_rw [Finsupp.total_apply, r] at e 
   change
     ((b.repr x).Sum fun (i : ι) (a : R) => (fun (x : w) (r : R) => r • (x : M)) (u i) a) =
       ((⟨x, p⟩ : w) : M) at
-    e
-  rw [← Finsupp.sum_embDomain, ← Finsupp.total_apply] at e
+    e 
+  rw [← Finsupp.sum_embDomain, ← Finsupp.total_apply] at e 
   -- Now we can contradict the linear independence of `hi`
   refine' hi.total_ne_of_not_mem_support _ _ e
   simp only [Finset.mem_map, Finsupp.support_embDomain]
   rintro ⟨j, -, W⟩
-  simp only [embedding.coe_fn_mk, Subtype.mk_eq_mk, ← r] at W
+  simp only [embedding.coe_fn_mk, Subtype.mk_eq_mk, ← r] at W 
   apply q ⟨j, W⟩
 #align basis.maximal Basis.maximal
 
@@ -1264,12 +1264,12 @@ theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Dis
   by
   rw [eq_top_iff]
   intro j hj
-  rw [← hv] at hj
-  rw [Submodule.mem_span] at hj⊢
+  rw [← hv] at hj 
+  rw [Submodule.mem_span] at hj ⊢
   refine' fun p hp => hj p fun u hu => _
   obtain ⟨i, rfl⟩ := hu
   have : ((w i)⁻¹ • 1 : R) • w i • v i ∈ p := p.smul_mem ((w i)⁻¹ • 1 : R) (hp ⟨i, rfl⟩)
-  rwa [smul_one_smul, inv_smul_smul] at this
+  rwa [smul_one_smul, inv_smul_smul] at this 
 #align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_top
 
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` are elements of a group,
@@ -1346,7 +1346,7 @@ noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fi
     rw [Set.range_comp, Submodule.span_image, b.span_eq, Submodule.map_subtype_top]
   @Basis.mk _ _ _ (Fin.cons y (N.Subtype ∘ b) : Fin (n + 1) → M) _ _ _
     ((b.LinearIndependent.map' N.Subtype (Submodule.ker_subtype _)).fin_cons' _ _ <| by
-      rintro c ⟨x, hx⟩ hc; rw [span_b] at hx; exact hli c x hx hc)
+      rintro c ⟨x, hx⟩ hc; rw [span_b] at hx ; exact hli c x hx hc)
     fun x _ => by rw [Fin.range_cons, Submodule.mem_span_insert', span_b]; exact hsp x
 #align basis.mk_fin_cons Basis.mkFinCons
 
@@ -1570,15 +1570,15 @@ theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodul
     simp_rw [span_singleton_le_iff_mem, ← Ne.def, Submodule.ne_bot_iff] at *
     rcases h with ⟨s, ⟨hs, hz⟩⟩
     cases' mem_span_singleton.1 (hT.1 hs) with a ha
-    have h : a ≠ 0 := by intro h; rw [h, zero_smul] at ha; exact hz ha.symm
-    apply_fun fun x => a⁻¹ • x  at ha
+    have h : a ≠ 0 := by intro h; rw [h, zero_smul] at ha ; exact hz ha.symm
+    apply_fun fun x => a⁻¹ • x  at ha 
     simp_rw [← mul_smul, inv_mul_cancel h, one_smul, ha] at *; exact smul_mem T _ hs
 #align nonzero_span_atom nonzero_span_atom
 
 /-- The atoms of the lattice of submodules of a module over a division ring are the
 submodules equal to the span of a nonzero element of the module. -/
 theorem atom_iff_nonzero_span (W : Submodule K V) :
-    IsAtom W ↔ ∃ (v : V)(hv : v ≠ 0), W = span K {v} :=
+    IsAtom W ↔ ∃ (v : V) (hv : v ≠ 0), W = span K {v} :=
   by
   refine' ⟨fun h => _, fun h => _⟩
   · cases' h with hbot h
@@ -1586,7 +1586,7 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
     refine' ⟨v, ⟨hv, _⟩⟩
     by_contra heq
     specialize h (span K {v})
-    rw [span_singleton_eq_bot, lt_iff_le_and_ne] at h
+    rw [span_singleton_eq_bot, lt_iff_le_and_ne] at h 
     exact hv (h ⟨(span_singleton_le_iff_mem v W).2 hW, Ne.symm HEq⟩)
   · rcases h with ⟨v, ⟨hv, rfl⟩⟩; exact nonzero_span_atom v hv
 #align atom_iff_nonzero_span atom_iff_nonzero_span
@@ -1595,7 +1595,7 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
 instance : IsAtomistic (Submodule K V)
     where eq_sSup_atoms := by
     intro W
-    use { T : Submodule K V | ∃ (v : V)(hv : v ∈ W)(hz : v ≠ 0), T = span K {v} }
+    use { T : Submodule K V | ∃ (v : V) (hv : v ∈ W) (hz : v ≠ 0), T = span K {v} }
     refine' ⟨submodule_eq_Sup_le_nonzero_spans W, _⟩
     rintro _ ⟨w, ⟨_, ⟨hw, rfl⟩⟩⟩; exact nonzero_span_atom w hw
 
@@ -1613,13 +1613,13 @@ theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj :
     by
     have h₁ : LinearIndependent K fun x : ↥(⇑f '' range (Basis.ofVectorSpace _ _)) => ↑x :=
       @LinearIndependent.image_subtype _ _ _ _ _ _ _ _ _ f hB₀ (show Disjoint _ _ by simp [hf_inj])
-    rwa [Basis.range_ofVectorSpace K V] at h₁
+    rwa [Basis.range_ofVectorSpace K V] at h₁ 
   let C := this.extend (subset_univ _)
   have BC := this.subset_extend (subset_univ _)
   let hC := Basis.extend this
   haveI : Inhabited V := ⟨0⟩
   refine' ⟨hC.constr ℕ (C.restrict (inv_fun f)), hB.ext fun b => _⟩
-  rw [image_subset_iff] at BC
+  rw [image_subset_iff] at BC 
   have fb_eq : f b = hC ⟨f b, BC b.2⟩ :=
     by
     change f b = Basis.extend this _
@@ -1666,12 +1666,12 @@ open Submodule LinearMap
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
 theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
-    ∃ (f : _)(_ : f ≠ (0 : V →ₗ[K] K)), p ≤ ker f :=
+    ∃ (f : _) (_ : f ≠ (0 : V →ₗ[K] K)), p ≤ ker f :=
   by
   rcases SetLike.exists_of_lt hp with ⟨v, -, hpv⟩; clear hp
   rcases(LinearPMap.supSpanSingleton ⟨p, 0⟩ v (1 : K) hpv).toFun.exists_extend with ⟨f, hf⟩
   refine' ⟨f, _, _⟩
-  · rintro rfl; rw [LinearMap.zero_comp] at hf
+  · rintro rfl; rw [LinearMap.zero_comp] at hf 
     have := LinearPMap.supSpanSingleton_apply_mk ⟨p, 0⟩ v (1 : K) hpv 0 p.zero_mem 1
     simpa using (LinearMap.congr_fun hf _).trans this
   · refine' fun x hx => mem_ker.2 _
Diff
@@ -76,7 +76,7 @@ universe u
 
 open Function Set Submodule
 
-open BigOperators
+open scoped BigOperators
 
 variable {ι : Type _} {ι' : Type _} {R : Type _} {R₂ : Type _} {K : Type _}
 
Diff
@@ -122,12 +122,6 @@ variable (b b₁ : Basis ι R M) (i : ι) (c : R) (x : M)
 
 section repr
 
-/- warning: basis.repr_injective -> Basis.repr_injective is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], Function.Injective.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ (max u1 u2))} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2], Function.Injective.{max (max (succ u3) (succ u2)) (succ u1), max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3)
-Case conversion may be inaccurate. Consider using '#align basis.repr_injective Basis.repr_injectiveₓ'. -/
 theorem repr_injective : Injective (repr : Basis ι R M → M ≃ₗ[R] ι →₀ R) := fun f g h => by
   cases f <;> cases g <;> congr
 #align basis.repr_injective Basis.repr_injective
@@ -151,34 +145,19 @@ instance funLike : FunLike (Basis ι R M) ι fun _ => M
 #align basis.fun_like Basis.funLike
 -/
 
-/- warning: basis.coe_of_repr -> Basis.coe_ofRepr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coe_of_repr Basis.coe_ofReprₓ'. -/
 @[simp]
 theorem coe_ofRepr (e : M ≃ₗ[R] ι →₀ R) : ⇑(ofRepr e) = fun i => e.symm (Finsupp.single i 1) :=
   rfl
 #align basis.coe_of_repr Basis.coe_ofRepr
 
-/- warning: basis.injective -> Basis.injective is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u2} R], Function.Injective.{succ u1, succ u3} ι M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u3} R], Function.Injective.{succ u2, succ u1} ι M (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b)
-Case conversion may be inaccurate. Consider using '#align basis.injective Basis.injectiveₓ'. -/
 protected theorem injective [Nontrivial R] : Injective b :=
   b.repr.symm.Injective.comp fun _ _ => (Finsupp.single_left_inj (one_ne_zero : (1 : R) ≠ 0)).mp
 #align basis.injective Basis.injective
 
-/- warning: basis.repr_symm_single_one -> Basis.repr_symm_single_one is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single_one Basis.repr_symm_single_oneₓ'. -/
 theorem repr_symm_single_one : b.repr.symm (Finsupp.single i 1) = b i :=
   rfl
 #align basis.repr_symm_single_one Basis.repr_symm_single_one
 
-/- warning: basis.repr_symm_single -> Basis.repr_symm_single is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single Basis.repr_symm_singleₓ'. -/
 theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
   calc
     b.repr.symm (Finsupp.single i c) = b.repr.symm (c • Finsupp.single i 1) := by
@@ -187,24 +166,15 @@ theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
     
 #align basis.repr_symm_single Basis.repr_symm_single
 
-/- warning: basis.repr_self -> Basis.repr_self is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_self Basis.repr_selfₓ'. -/
 @[simp]
 theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
   LinearEquiv.apply_symm_apply _ _
 #align basis.repr_self Basis.repr_self
 
-/- warning: basis.repr_self_apply -> Basis.repr_self_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_self_apply Basis.repr_self_applyₓ'. -/
 theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then 1 else 0 := by
   rw [repr_self, Finsupp.single_apply]
 #align basis.repr_self_apply Basis.repr_self_apply
 
-/- warning: basis.repr_symm_apply -> Basis.repr_symm_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_symm_apply Basis.repr_symm_applyₓ'. -/
 @[simp]
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
   calc
@@ -215,48 +185,30 @@ theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
     
 #align basis.repr_symm_apply Basis.repr_symm_apply
 
-/- warning: basis.coe_repr_symm -> Basis.coe_repr_symm is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coe_repr_symm Basis.coe_repr_symmₓ'. -/
 @[simp]
 theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
   LinearMap.ext fun v => b.repr_symm_apply v
 #align basis.coe_repr_symm Basis.coe_repr_symm
 
-/- warning: basis.repr_total -> Basis.repr_total is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_total Basis.repr_totalₓ'. -/
 @[simp]
 theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v := by rw [← b.coe_repr_symm];
   exact b.repr.apply_symm_apply v
 #align basis.repr_total Basis.repr_total
 
-/- warning: basis.total_repr -> Basis.total_repr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.total_repr Basis.total_reprₓ'. -/
 @[simp]
 theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x := by rw [← b.coe_repr_symm];
   exact b.repr.symm_apply_apply x
 #align basis.total_repr Basis.total_repr
 
-/- warning: basis.repr_range -> Basis.repr_range is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_range Basis.repr_rangeₓ'. -/
 theorem repr_range : (b.repr : M →ₗ[R] ι →₀ R).range = Finsupp.supported R R univ := by
   rw [LinearEquiv.range, Finsupp.supported_univ]
 #align basis.repr_range Basis.repr_range
 
-/- warning: basis.mem_span_repr_support -> Basis.mem_span_repr_support is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.mem_span_repr_support Basis.mem_span_repr_supportₓ'. -/
 theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
     m ∈ span R (b '' (b.repr m).support) :=
   (Finsupp.mem_span_image_iff_total _).2 ⟨b.repr m, by simp [Finsupp.mem_supported_support]⟩
 #align basis.mem_span_repr_support Basis.mem_span_repr_support
 
-/- warning: basis.repr_support_subset_of_mem_span -> Basis.repr_support_subset_of_mem_span is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_support_subset_of_mem_span Basis.repr_support_subset_of_mem_spanₓ'. -/
 theorem repr_support_subset_of_mem_span {ι : Type _} (b : Basis ι R M) (s : Set ι) {m : M}
     (hm : m ∈ span R (b '' s)) : ↑(b.repr m).support ⊆ s :=
   by
@@ -281,12 +233,6 @@ def coord : M →ₗ[R] R :=
 #align basis.coord Basis.coord
 -/
 
-/- warning: basis.forall_coord_eq_zero_iff -> Basis.forall_coord_eq_zero_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) (Eq.{succ u3} M x (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) x) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) x) 0 (Zero.toOfNat0.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) x) (MonoidWithZero.toZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) x) (Semiring.toMonoidWithZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) x) _inst_1))))) (Eq.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)))))
-Case conversion may be inaccurate. Consider using '#align basis.forall_coord_eq_zero_iff Basis.forall_coord_eq_zero_iffₓ'. -/
 theorem forall_coord_eq_zero_iff {x : M} : (∀ i, b.Coord i x = 0) ↔ x = 0 :=
   Iff.trans (by simp only [b.coord_apply, Finsupp.ext_iff, Finsupp.zero_apply])
     b.repr.map_eq_zero_iff
@@ -299,20 +245,11 @@ noncomputable def sumCoords : M →ₗ[R] R :=
 #align basis.sum_coords Basis.sumCoords
 -/
 
-/- warning: basis.coe_sum_coords -> Basis.coe_sumCoords is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords Basis.coe_sumCoordsₓ'. -/
 @[simp]
 theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i => id :=
   rfl
 #align basis.coe_sum_coords Basis.coe_sumCoords
 
-/- warning: basis.coe_sum_coords_eq_finsum -> Basis.coe_sumCoords_eq_finsum is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u2, succ u1} R ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) m))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u3, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) m) ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) m) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) m) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) m) _inst_1))) (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) m))
-Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords_eq_finsum Basis.coe_sumCoords_eq_finsumₓ'. -/
 theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b.Coord i m :=
   by
   ext m
@@ -322,12 +259,6 @@ theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b
     Finsupp.fun_support_eq]
 #align basis.coe_sum_coords_eq_finsum Basis.coe_sumCoords_eq_finsum
 
-/- warning: basis.coe_sum_coords_of_fintype -> Basis.coe_sumCoords_of_fintype is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι], Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finset.sum.{max u3 u2, u1} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) ι (Pi.addCommMonoid.{u3, u2} M (fun (ᾰ : M) => R) (fun (i : M) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i)))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u3} ι], Eq.{max (succ u2) (succ u1)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) a) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.sum.{max u2 u1, u3} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) ι (LinearMap.addCommMonoid.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i)))
-Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords_of_fintype Basis.coe_sumCoords_of_fintypeₓ'. -/
 @[simp]
 theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i, b.Coord i :=
   by
@@ -336,31 +267,16 @@ theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i,
     id.def, Fintype.sum_apply, imp_true_iff, eq_self_iff_true, Finsupp.coe_lsum, LinearMap.coe_comp]
 #align basis.coe_sum_coords_of_fintype Basis.coe_sumCoords_of_fintype
 
-/- warning: basis.sum_coords_self_apply -> Basis.sumCoords_self_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) _inst_1)))
-Case conversion may be inaccurate. Consider using '#align basis.sum_coords_self_apply Basis.sumCoords_self_applyₓ'. -/
 @[simp]
 theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
   simp only [Basis.sumCoords, LinearMap.id_coe, LinearEquiv.coe_coe, id.def, Basis.repr_self,
     Function.comp_apply, Finsupp.coe_lsum, LinearMap.coe_comp, Finsupp.sum_single_index]
 #align basis.sum_coords_self_apply Basis.sumCoords_self_apply
 
-/- warning: basis.dvd_coord_smul -> Basis.dvd_coord_smul is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.Dvd.{u2} R (semigroupDvd.{u2} R (SemigroupWithZero.toSemigroup.{u2} R (NonUnitalSemiring.toSemigroupWithZero.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1)))) r (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) r m))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.dvd.{u3} R (semigroupDvd.{u3} R (SemigroupWithZero.toSemigroup.{u3} R (NonUnitalSemiring.toSemigroupWithZero.{u3} R (Semiring.toNonUnitalSemiring.{u3} R _inst_1)))) r (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) r m))
-Case conversion may be inaccurate. Consider using '#align basis.dvd_coord_smul Basis.dvd_coord_smulₓ'. -/
 theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
   ⟨b.Coord i m, by simp⟩
 #align basis.dvd_coord_smul Basis.dvd_coord_smul
 
-/- warning: basis.coord_repr_symm -> Basis.coord_repr_symm is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coord_repr_symm Basis.coord_repr_symmₓ'. -/
 theorem coord_repr_symm (b : Basis ι R M) (i : ι) (f : ι →₀ R) : b.Coord i (b.repr.symm f) = f i :=
   by simp only [repr_symm_apply, coord_apply, repr_total]
 #align basis.coord_repr_symm Basis.coord_repr_symm
@@ -375,9 +291,6 @@ variable [RingHomInvPair σ σ'] [RingHomInvPair σ' σ]
 
 variable {M₁ : Type _} [AddCommMonoid M₁] [Module R₁ M₁]
 
-/- warning: basis.ext -> Basis.ext is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.ext Basis.extₓ'. -/
 /-- Two linear maps are equal if they are equal on basis vectors. -/
 theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
   by
@@ -388,9 +301,6 @@ theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
 
 include σ'
 
-/- warning: basis.ext' -> Basis.ext' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.ext' Basis.ext'ₓ'. -/
 /-- Two linear equivs are equal if they are equal on basis vectors. -/
 theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
   by
@@ -401,46 +311,28 @@ theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
 
 omit σ'
 
-/- warning: basis.ext_elem_iff -> Basis.ext_elem_iff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.ext_elem_iff Basis.ext_elem_iffₓ'. -/
 /-- Two elements are equal iff their coordinates are equal. -/
 theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
   simp only [← Finsupp.ext_iff, EmbeddingLike.apply_eq_iff_eq]
 #align basis.ext_elem_iff Basis.ext_elem_iff
 
-/- warning: basis.ext_elem -> Basis.ext_elem is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.ext_elem Basis.ext_elemₓ'. -/
 alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 #align basis.ext_elem Basis.ext_elem
 
-/- warning: basis.repr_eq_iff -> Basis.repr_eq_iff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff Basis.repr_eq_iffₓ'. -/
 theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
     ↑b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
   ⟨fun h i => h ▸ b.repr_self i, fun h => b.ext fun i => (b.repr_self i).trans (h i).symm⟩
 #align basis.repr_eq_iff Basis.repr_eq_iff
 
-/- warning: basis.repr_eq_iff' -> Basis.repr_eq_iff' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff' Basis.repr_eq_iff'ₓ'. -/
 theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
     b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
   ⟨fun h i => h ▸ b.repr_self i, fun h => b.ext' fun i => (b.repr_self i).trans (h i).symm⟩
 #align basis.repr_eq_iff' Basis.repr_eq_iff'
 
-/- warning: basis.apply_eq_iff -> Basis.apply_eq_iff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.apply_eq_iff Basis.apply_eq_iffₓ'. -/
 theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x = Finsupp.single i 1 :=
   ⟨fun h => h ▸ b.repr_self i, fun h => b.repr.Injective ((b.repr_self i).trans h.symm)⟩
 #align basis.apply_eq_iff Basis.apply_eq_iff
 
-/- warning: basis.repr_apply_eq -> Basis.repr_apply_eq is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_apply_eq Basis.repr_apply_eqₓ'. -/
 /-- An unbundled version of `repr_eq_iff` -/
 theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f y)
     (hsmul : ∀ (c : R) (x : M), f (c • x) = c • f x) (f_eq : ∀ i, f (b i) = Finsupp.single i 1)
@@ -461,20 +353,11 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
     
 #align basis.repr_apply_eq Basis.repr_apply_eq
 
-/- warning: basis.eq_of_repr_eq_repr -> Basis.eq_ofRepr_eq_repr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.eq_of_repr_eq_repr Basis.eq_ofRepr_eq_reprₓ'. -/
 /-- Two bases are equal if they assign the same coordinates. -/
 theorem eq_ofRepr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
   repr_injective <| by ext; apply h
 #align basis.eq_of_repr_eq_repr Basis.eq_ofRepr_eq_repr
 
-/- warning: basis.eq_of_apply_eq -> Basis.eq_of_apply_eq is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b₁ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3}, (forall (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b₁ i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b₂ i)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₂ i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
-Case conversion may be inaccurate. Consider using '#align basis.eq_of_apply_eq Basis.eq_of_apply_eqₓ'. -/
 /-- Two bases are equal if their basis vectors are the same. -/
 @[ext]
 theorem eq_of_apply_eq {b₁ b₂ : Basis ι R M} : (∀ i, b₁ i = b₂ i) → b₁ = b₂ :=
@@ -495,9 +378,6 @@ protected def map : Basis ι R M' :=
 #align basis.map Basis.map
 -/
 
-/- warning: basis.map_apply -> Basis.map_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.map_apply Basis.map_applyₓ'. -/
 @[simp]
 theorem map_apply (i) : b.map f i = f (b i) :=
   rfl
@@ -514,9 +394,6 @@ include f h b
 
 attribute [local instance] SMul.comp.isScalarTower
 
-/- warning: basis.map_coeffs -> Basis.mapCoeffs is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.map_coeffs Basis.mapCoeffsₓ'. -/
 /-- If `R` and `R'` are isomorphic rings that act identically on a module `M`,
 then a basis for `M` as `R`-module is also a basis for `M` as `R'`-module.
 
@@ -534,16 +411,10 @@ def mapCoeffs : Basis ι R' M :=
         Finsupp.mapRange.linearEquiv (Module.compHom.toLinearEquiv f.symm).symm
 #align basis.map_coeffs Basis.mapCoeffs
 
-/- warning: basis.map_coeffs_apply -> Basis.mapCoeffs_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.map_coeffs_apply Basis.mapCoeffs_applyₓ'. -/
 theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
   apply_eq_iff.mpr <| by simp [f.to_add_equiv_eq_coe]
 #align basis.map_coeffs_apply Basis.mapCoeffs_apply
 
-/- warning: basis.coe_map_coeffs -> Basis.coe_mapCoeffs is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coe_map_coeffs Basis.coe_mapCoeffsₓ'. -/
 @[simp]
 theorem coe_mapCoeffs : (b.mapCoeffs f h : ι → M) = b :=
   funext <| b.mapCoeffs_apply f h
@@ -564,12 +435,6 @@ def reindex : Basis ι' R M :=
 #align basis.reindex Basis.reindex
 -/
 
-/- warning: basis.reindex_apply -> Basis.reindex_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u4} M (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
-but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) i') (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
-Case conversion may be inaccurate. Consider using '#align basis.reindex_apply Basis.reindex_applyₓ'. -/
 theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
   show
     (b.repr.trans (Finsupp.domLCongr e)).symm (Finsupp.single i' 1) =
@@ -577,60 +442,30 @@ theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
     by rw [LinearEquiv.symm_trans_apply, Finsupp.domLCongr_symm, Finsupp.domLCongr_single]
 #align basis.reindex_apply Basis.reindex_apply
 
-/- warning: basis.coe_reindex -> Basis.coe_reindex is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u4)} ((fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u2, succ u1, succ u4} ι' ι M (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e)))
-but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} (forall (a : ι'), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) a) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u4, u2, u3} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u4, succ u1, succ u3} ι' ι M (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u4} ι ι' e)))
-Case conversion may be inaccurate. Consider using '#align basis.coe_reindex Basis.coe_reindexₓ'. -/
 @[simp]
 theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
   funext (b.reindex_apply e)
 #align basis.coe_reindex Basis.coe_reindex
 
-/- warning: basis.repr_reindex_apply -> Basis.repr_reindex_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_reindex_apply Basis.repr_reindex_applyₓ'. -/
 theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.symm i') :=
   show (Finsupp.domLCongr e : _ ≃ₗ[R] _) (b.repr x) i' = _ by simp
 #align basis.repr_reindex_apply Basis.repr_reindex_apply
 
-/- warning: basis.repr_reindex -> Basis.repr_reindex is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_reindex Basis.repr_reindexₓ'. -/
 @[simp]
 theorem repr_reindex : (b.reindex e).repr x = (b.repr x).mapDomain e :=
   FunLike.ext _ _ <| by simp [repr_reindex_apply]
 #align basis.repr_reindex Basis.repr_reindex
 
-/- warning: basis.reindex_refl -> Basis.reindex_refl is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u1, u2, u3} ι ι R M _inst_1 _inst_2 _inst_3 b (Equiv.refl.{succ u1} ι)) b
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u3, u3, u2, u1} ι ι R M _inst_1 _inst_2 _inst_3 b (Equiv.refl.{succ u3} ι)) b
-Case conversion may be inaccurate. Consider using '#align basis.reindex_refl Basis.reindex_reflₓ'. -/
 @[simp]
 theorem reindex_refl : b.reindex (Equiv.refl ι) = b :=
   eq_of_apply_eq fun i => by simp
 #align basis.reindex_refl Basis.reindex_refl
 
-/- warning: basis.range_reindex -> Basis.range_reindex is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{succ u4} (Set.{u4} M) (Set.range.{u4, succ u2} M ι' (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e))) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b))
-but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι'), Eq.{succ u4} (Set.{u4} M) (Set.range.{u4, succ u3} M ι' (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e))) (Set.range.{u4, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b))
-Case conversion may be inaccurate. Consider using '#align basis.range_reindex Basis.range_reindexₓ'. -/
 /-- `simp` can prove this as `basis.coe_reindex` + `equiv_like.range_comp` -/
 theorem range_reindex : Set.range (b.reindex e) = Set.range b := by
   rw [coe_reindex, EquivLike.range_comp]
 #align basis.range_reindex Basis.range_reindex
 
-/- warning: basis.sum_coords_reindex -> Basis.sumCoords_reindex is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u4) (succ u3)} (LinearMap.{u3, u3, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) (Basis.sumCoords.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Basis.sumCoords.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b)
-but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u4}} {M : Type.{u3}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u4) (succ u3)} (LinearMap.{u4, u4, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) _inst_3 (Semiring.toModule.{u4} R _inst_1)) (Basis.sumCoords.{u2, u4, u3} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u4, u3} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Basis.sumCoords.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 b)
-Case conversion may be inaccurate. Consider using '#align basis.sum_coords_reindex Basis.sumCoords_reindexₓ'. -/
 @[simp]
 theorem sumCoords_reindex : (b.reindex e).sumCoords = b.sumCoords :=
   by
@@ -652,9 +487,6 @@ def reindexRange : Basis (range b) R M :=
 #align basis.reindex_range Basis.reindexRange
 -/
 
-/- warning: basis.reindex_range_self -> Basis.reindexRange_self is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.reindex_range_self Basis.reindexRange_selfₓ'. -/
 theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange ⟨b i, h⟩ = b i :=
   by
   by_cases htr : Nontrivial R
@@ -666,9 +498,6 @@ theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange
     simp [reindex_range]
 #align basis.reindex_range_self Basis.reindexRange_self
 
-/- warning: basis.reindex_range_repr_self -> Basis.reindexRange_repr_self is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr_self Basis.reindexRange_repr_selfₓ'. -/
 theorem reindexRange_repr_self (i : ι) :
     b.reindexRange.repr (b i) = Finsupp.single ⟨b i, mem_range_self i⟩ 1 :=
   calc
@@ -678,17 +507,11 @@ theorem reindexRange_repr_self (i : ι) :
     
 #align basis.reindex_range_repr_self Basis.reindexRange_repr_self
 
-/- warning: basis.reindex_range_apply -> Basis.reindexRange_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.reindex_range_apply Basis.reindexRange_applyₓ'. -/
 @[simp]
 theorem reindexRange_apply (x : range b) : b.reindexRange x = x := by rcases x with ⟨bi, ⟨i, rfl⟩⟩;
   exact b.reindex_range_self i
 #align basis.reindex_range_apply Basis.reindexRange_apply
 
-/- warning: basis.reindex_range_repr' -> Basis.reindexRange_repr' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr' Basis.reindexRange_repr'ₓ'. -/
 theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
     b.reindexRange.repr x ⟨bi, ⟨i, h⟩⟩ = b.repr x i :=
   by
@@ -708,9 +531,6 @@ theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
     exact fun i j h => b.injective (Subtype.mk.inj h)
 #align basis.reindex_range_repr' Basis.reindexRange_repr'
 
-/- warning: basis.reindex_range_repr -> Basis.reindexRange_repr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr Basis.reindexRange_reprₓ'. -/
 @[simp]
 theorem reindexRange_repr (x : M) (i : ι) (h := Set.mem_range_self i) :
     b.reindexRange.repr x ⟨b i, h⟩ = b.repr x i :=
@@ -729,17 +549,11 @@ def reindexFinsetRange : Basis (Finset.univ.image b) R M :=
 #align basis.reindex_finset_range Basis.reindexFinsetRange
 -/
 
-/- warning: basis.reindex_finset_range_self -> Basis.reindexFinsetRange_self is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_self Basis.reindexFinsetRange_selfₓ'. -/
 theorem reindexFinsetRange_self (i : ι) (h := Finset.mem_image_of_mem b (Finset.mem_univ i)) :
     b.reindexFinsetRange ⟨b i, h⟩ = b i := by
   rw [reindex_finset_range, reindex_apply, reindex_range_apply]; rfl
 #align basis.reindex_finset_range_self Basis.reindexFinsetRange_self
 
-/- warning: basis.reindex_finset_range_apply -> Basis.reindexFinsetRange_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_apply Basis.reindexFinsetRange_applyₓ'. -/
 @[simp]
 theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRange x = x :=
   by
@@ -747,9 +561,6 @@ theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRang
   exact b.reindex_finset_range_self i
 #align basis.reindex_finset_range_apply Basis.reindexFinsetRange_apply
 
-/- warning: basis.reindex_finset_range_repr_self -> Basis.reindexFinsetRange_repr_self is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr_self Basis.reindexFinsetRange_repr_selfₓ'. -/
 theorem reindexFinsetRange_repr_self (i : ι) :
     b.reindexFinsetRange.repr (b i) =
       Finsupp.single ⟨b i, Finset.mem_image_of_mem b (Finset.mem_univ i)⟩ 1 :=
@@ -760,9 +571,6 @@ theorem reindexFinsetRange_repr_self (i : ι) :
   rfl
 #align basis.reindex_finset_range_repr_self Basis.reindexFinsetRange_repr_self
 
-/- warning: basis.reindex_finset_range_repr -> Basis.reindexFinsetRange_repr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr Basis.reindexFinsetRange_reprₓ'. -/
 @[simp]
 theorem reindexFinsetRange_repr (x : M) (i : ι)
     (h := Finset.mem_image_of_mem b (Finset.mem_univ i)) :
@@ -773,12 +581,6 @@ end Fintype
 
 end Reindex
 
-/- warning: basis.linear_independent -> Basis.linearIndependent is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), LinearIndependent.{u1, u2, u3} ι R M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) _inst_1 _inst_2 _inst_3
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), LinearIndependent.{u3, u2, u1} ι R M (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) _inst_1 _inst_2 _inst_3
-Case conversion may be inaccurate. Consider using '#align basis.linear_independent Basis.linearIndependentₓ'. -/
 protected theorem linearIndependent : LinearIndependent R b :=
   linearIndependent_iff.mpr fun l hl =>
     calc
@@ -787,12 +589,6 @@ protected theorem linearIndependent : LinearIndependent R b :=
       
 #align basis.linear_independent Basis.linearIndependent
 
-/- warning: basis.ne_zero -> Basis.ne_zero is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u2} R] (i : ι), Ne.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u3} R] (i : ι), Ne.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2))))
-Case conversion may be inaccurate. Consider using '#align basis.ne_zero Basis.ne_zeroₓ'. -/
 protected theorem ne_zero [Nontrivial R] (i) : b i ≠ 0 :=
   b.LinearIndependent.NeZero i
 #align basis.ne_zero Basis.ne_zero
@@ -805,22 +601,10 @@ protected theorem mem_span (x : M) : x ∈ span R (range b) :=
 #align basis.mem_span Basis.mem_span
 -/
 
-/- warning: basis.span_eq -> Basis.span_eq is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (Top.top.{u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.hasTop.{u2, u3} R M _inst_1 _inst_2 _inst_3))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Top.top.{u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.instTopSubmodule.{u2, u3} R M _inst_1 _inst_2 _inst_3))
-Case conversion may be inaccurate. Consider using '#align basis.span_eq Basis.span_eqₓ'. -/
 protected theorem span_eq : span R (range b) = ⊤ :=
   eq_top_iff.mpr fun x _ => b.mem_span x
 #align basis.span_eq Basis.span_eq
 
-/- warning: basis.index_nonempty -> Basis.index_nonempty is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall [_inst_6 : Nontrivial.{u3} M], Nonempty.{succ u1} ι)
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2], (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) -> (forall [_inst_6 : Nontrivial.{u1} M], Nonempty.{succ u3} ι)
-Case conversion may be inaccurate. Consider using '#align basis.index_nonempty Basis.index_nonemptyₓ'. -/
 theorem index_nonempty (b : Basis ι R M) [Nontrivial M] : Nonempty ι :=
   by
   obtain ⟨x, y, ne⟩ : ∃ x y : M, x ≠ y := Nontrivial.exists_pair_ne
@@ -828,9 +612,6 @@ theorem index_nonempty (b : Basis ι R M) [Nontrivial M] : Nonempty ι :=
   exact ⟨i⟩
 #align basis.index_nonempty Basis.index_nonempty
 
-/- warning: basis.mem_submodule_iff -> Basis.mem_submodule_iff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff Basis.mem_submodule_iffₓ'. -/
 /-- If the submodule `P` has a basis, `x ∈ P` iff it is a linear combination of basis vectors. -/
 theorem mem_submodule_iff {P : Submodule R M} (b : Basis ι R P) {x : M} :
     x ∈ P ↔ ∃ c : ι →₀ R, x = Finsupp.sum c fun i x => x • b i :=
@@ -867,57 +648,36 @@ def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M'
 #align basis.constr Basis.constr
 -/
 
-/- warning: basis.constr_def -> Basis.constr_def is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.constr_def Basis.constr_defₓ'. -/
 theorem constr_def (f : ι → M') :
     b.constr S f = Finsupp.total M' M' R id ∘ₗ Finsupp.lmapDomain R R f ∘ₗ ↑b.repr :=
   rfl
 #align basis.constr_def Basis.constr_def
 
-/- warning: basis.constr_apply -> Basis.constr_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.constr_apply Basis.constr_applyₓ'. -/
 theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum fun b a => a • f b :=
   by
   simp only [constr_def, LinearMap.comp_apply, Finsupp.lmapDomain_apply, Finsupp.total_apply]
   rw [Finsupp.sum_mapDomain_index] <;> simp [add_smul]
 #align basis.constr_apply Basis.constr_apply
 
-/- warning: basis.constr_basis -> Basis.constr_basis is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.constr_basis Basis.constr_basisₓ'. -/
 @[simp]
 theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i) = f i := by
   simp [Basis.constr_apply, b.repr_self]
 #align basis.constr_basis Basis.constr_basis
 
-/- warning: basis.constr_eq -> Basis.constr_eq is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.constr_eq Basis.constr_eqₓ'. -/
 theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)) : b.constr S g = f :=
   b.ext fun i => (b.constr_basis S g i).trans (h i)
 #align basis.constr_eq Basis.constr_eq
 
-/- warning: basis.constr_self -> Basis.constr_self is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.constr_self Basis.constr_selfₓ'. -/
 theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
   b.constr_eq S fun x => rfl
 #align basis.constr_self Basis.constr_self
 
-/- warning: basis.constr_range -> Basis.constr_range is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.constr_range Basis.constr_rangeₓ'. -/
 theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span R (range f) := by
   rw [b.constr_def S f, LinearMap.range_comp, LinearMap.range_comp, LinearEquiv.range, ←
     Finsupp.supported_univ, Finsupp.lmapDomain_supported, ← Set.image_univ, ←
     Finsupp.span_image_eq_map_total, Set.image_id]
 #align basis.constr_range Basis.constr_range
 
-/- warning: basis.constr_comp -> Basis.constr_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.constr_comp Basis.constr_compₓ'. -/
 @[simp]
 theorem constr_comp (f : M' →ₗ[R] M') (v : ι → M') : b.constr S (f ∘ v) = f.comp (b.constr S v) :=
   b.ext fun i => by simp only [Basis.constr_basis, LinearMap.comp_apply]
@@ -939,9 +699,6 @@ protected def equiv : M ≃ₗ[R] M' :=
 #align basis.equiv Basis.equiv
 -/
 
-/- warning: basis.equiv_apply -> Basis.equiv_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.equiv_apply Basis.equiv_applyₓ'. -/
 @[simp]
 theorem equiv_apply : b.Equiv b' e (b i) = b' (e i) := by simp [Basis.equiv]
 #align basis.equiv_apply Basis.equiv_apply
@@ -953,32 +710,17 @@ theorem equiv_refl : b.Equiv b (Equiv.refl ι) = LinearEquiv.refl R M :=
 #align basis.equiv_refl Basis.equiv_refl
 -/
 
-/- warning: basis.equiv_symm -> Basis.equiv_symm is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u5) (succ u4)} (LinearEquiv.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) (LinearEquiv.symm.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e)) (Basis.equiv.{u2, u1, u3, u5, u4} ι' ι R M' M _inst_1 _inst_4 _inst_5 _inst_2 _inst_3 b' b (Equiv.symm.{succ u1, succ u2} ι ι' e))
-but is expected to have type
-  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u2, succ u1} ι ι'), Eq.{max (succ u5) (succ u4)} (LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) (LinearEquiv.symm.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equiv.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e)) (Basis.equiv.{u1, u2, u3, u4, u5} ι' ι R M' M _inst_1 _inst_4 _inst_5 _inst_2 _inst_3 b' b (Equiv.symm.{succ u2, succ u1} ι ι' e))
-Case conversion may be inaccurate. Consider using '#align basis.equiv_symm Basis.equiv_symmₓ'. -/
 @[simp]
 theorem equiv_symm : (b.Equiv b' e).symm = b'.Equiv b e.symm :=
   b'.ext' fun i => (b.Equiv b' e).Injective (by simp)
 #align basis.equiv_symm Basis.equiv_symm
 
-/- warning: basis.equiv_trans -> Basis.equiv_trans is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.equiv_trans Basis.equiv_transₓ'. -/
 @[simp]
 theorem equiv_trans {ι'' : Type _} (b'' : Basis ι'' R M'') (e : ι ≃ ι') (e' : ι' ≃ ι'') :
     (b.Equiv b' e).trans (b'.Equiv b'' e') = b.Equiv b'' (e.trans e') :=
   b.ext' fun i => by simp
 #align basis.equiv_trans Basis.equiv_trans
 
-/- warning: basis.map_equiv -> Basis.map_equiv is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u1) (succ u3) (succ u5)} (Basis.{u1, u3, u5} ι R M' _inst_1 _inst_4 _inst_5) (Basis.map.{u1, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e)) (Basis.reindex.{u2, u1, u3, u5} ι' ι R M' _inst_1 _inst_4 _inst_5 b' (Equiv.symm.{succ u1, succ u2} ι ι' e))
-but is expected to have type
-  forall {ι : Type.{u5}} {ι' : Type.{u2}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u1}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u1} M'] [_inst_5 : Module.{u4, u1} R M' _inst_1 _inst_4] (b : Basis.{u5, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u4, u1} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u5, succ u2} ι ι'), Eq.{max (max (succ u5) (succ u4)) (succ u1)} (Basis.{u5, u4, u1} ι R M' _inst_1 _inst_4 _inst_5) (Basis.map.{u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b (Basis.equiv.{u5, u2, u4, u3, u1} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e)) (Basis.reindex.{u2, u5, u4, u1} ι' ι R M' _inst_1 _inst_4 _inst_5 b' (Equiv.symm.{succ u5, succ u2} ι ι' e))
-Case conversion may be inaccurate. Consider using '#align basis.map_equiv Basis.map_equivₓ'. -/
 @[simp]
 theorem map_equiv (b : Basis ι R M) (b' : Basis ι' R M') (e : ι ≃ ι') :
     b.map (b.Equiv b' e) = b'.reindex e.symm := by ext i; simp
@@ -990,12 +732,6 @@ section Prod
 
 variable (b' : Basis ι' R M')
 
-/- warning: basis.prod -> Basis.prod is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4], (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) -> (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) -> (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))
-but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4], (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) -> (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) -> (Basis.{max u2 u1, u3, max u5 u4} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))
-Case conversion may be inaccurate. Consider using '#align basis.prod Basis.prodₓ'. -/
 /-- `basis.prod` maps a `ι`-indexed basis for `M` and a `ι'`-indexed basis for `M'`
 to a `ι ⊕ ι'`-index basis for `M × M'`.
 For the specific case of `R × R`, see also `basis.fin_two_prod`. -/
@@ -1003,25 +739,16 @@ protected def prod : Basis (Sum ι ι') R (M × M') :=
   ofRepr ((b.repr.Prod b'.repr).trans (Finsupp.sumFinsuppLEquivProdFinsupp R).symm)
 #align basis.prod Basis.prod
 
-/- warning: basis.prod_repr_inl -> Basis.prod_repr_inl is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.prod_repr_inl Basis.prod_repr_inlₓ'. -/
 @[simp]
 theorem prod_repr_inl (x) (i) : (b.Prod b').repr x (Sum.inl i) = b.repr x.1 i :=
   rfl
 #align basis.prod_repr_inl Basis.prod_repr_inl
 
-/- warning: basis.prod_repr_inr -> Basis.prod_repr_inr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.prod_repr_inr Basis.prod_repr_inrₓ'. -/
 @[simp]
 theorem prod_repr_inr (x) (i) : (b.Prod b').repr x (Sum.inr i) = b'.repr x.2 i :=
   rfl
 #align basis.prod_repr_inr Basis.prod_repr_inr
 
-/- warning: basis.prod_apply_inl_fst -> Basis.prod_apply_inl_fst is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inl_fst Basis.prod_apply_inl_fstₓ'. -/
 theorem prod_apply_inl_fst (i) : (b.Prod b' (Sum.inl i)).1 = b i :=
   b.repr.Injective <| by
     ext j
@@ -1031,9 +758,6 @@ theorem prod_apply_inl_fst (i) : (b.Prod b' (Sum.inl i)).1 = b i :=
     apply Finsupp.single_apply_left Sum.inl_injective
 #align basis.prod_apply_inl_fst Basis.prod_apply_inl_fst
 
-/- warning: basis.prod_apply_inr_fst -> Basis.prod_apply_inr_fst is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inr_fst Basis.prod_apply_inr_fstₓ'. -/
 theorem prod_apply_inr_fst (i) : (b.Prod b' (Sum.inr i)).1 = 0 :=
   b.repr.Injective <| by
     ext i
@@ -1044,9 +768,6 @@ theorem prod_apply_inr_fst (i) : (b.Prod b' (Sum.inr i)).1 = 0 :=
     apply Finsupp.single_eq_of_ne Sum.inr_ne_inl
 #align basis.prod_apply_inr_fst Basis.prod_apply_inr_fst
 
-/- warning: basis.prod_apply_inl_snd -> Basis.prod_apply_inl_snd is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inl_snd Basis.prod_apply_inl_sndₓ'. -/
 theorem prod_apply_inl_snd (i) : (b.Prod b' (Sum.inl i)).2 = 0 :=
   b'.repr.Injective <| by
     ext j
@@ -1057,9 +778,6 @@ theorem prod_apply_inl_snd (i) : (b.Prod b' (Sum.inl i)).2 = 0 :=
     apply Finsupp.single_eq_of_ne Sum.inl_ne_inr
 #align basis.prod_apply_inl_snd Basis.prod_apply_inl_snd
 
-/- warning: basis.prod_apply_inr_snd -> Basis.prod_apply_inr_snd is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inr_snd Basis.prod_apply_inr_sndₓ'. -/
 theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
   b'.repr.Injective <| by
     ext i
@@ -1069,9 +787,6 @@ theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
     apply Finsupp.single_apply_left Sum.inr_injective
 #align basis.prod_apply_inr_snd Basis.prod_apply_inr_snd
 
-/- warning: basis.prod_apply -> Basis.prod_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.prod_apply Basis.prod_applyₓ'. -/
 @[simp]
 theorem prod_apply (i) :
     b.Prod b' i = Sum.elim (LinearMap.inl R M M' ∘ b) (LinearMap.inr R M M' ∘ b') i := by
@@ -1084,12 +799,6 @@ end Prod
 
 section NoZeroSMulDivisors
 
-/- warning: basis.no_zero_smul_divisors -> Basis.noZeroSMulDivisors is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (NoZeroSMulDivisors.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))))
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u3} R (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))], (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) -> (NoZeroSMulDivisors.{u3, u1} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u1} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u1} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u3, u1} R M _inst_1 _inst_2 _inst_3)))))
-Case conversion may be inaccurate. Consider using '#align basis.no_zero_smul_divisors Basis.noZeroSMulDivisorsₓ'. -/
 -- Can't be an instance because the basis can't be inferred.
 protected theorem noZeroSMulDivisors [NoZeroDivisors R] (b : Basis ι R M) :
     NoZeroSMulDivisors R M :=
@@ -1102,20 +811,11 @@ protected theorem noZeroSMulDivisors [NoZeroDivisors R] (b : Basis ι R M) :
       exact this.resolve_right fun hr => hx (b.repr.map_eq_zero_iff.mp hr)⟩
 #align basis.no_zero_smul_divisors Basis.noZeroSMulDivisors
 
-/- warning: basis.smul_eq_zero -> Basis.smul_eq_zero is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {c : R} {x : M}, Iff (Eq.{succ u3} M (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x) (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))))))) (Or (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) (Eq.{succ u3} M x (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))))))))
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u3} R (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))], (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) -> (forall {c : R} {x : M}, Iff (Eq.{succ u1} M (HSMul.hSMul.{u3, u1, u1} R M M (instHSMul.{u3, u1} R M (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u1} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u1} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u3, u1} R M _inst_1 _inst_2 _inst_3))))) c x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2))))) (Or (Eq.{succ u3} R c (OfNat.ofNat.{u3} R 0 (Zero.toOfNat0.{u3} R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))))) (Eq.{succ u1} M x (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))))))
-Case conversion may be inaccurate. Consider using '#align basis.smul_eq_zero Basis.smul_eq_zeroₓ'. -/
 protected theorem smul_eq_zero [NoZeroDivisors R] (b : Basis ι R M) {c : R} {x : M} :
     c • x = 0 ↔ c = 0 ∨ x = 0 :=
   @smul_eq_zero _ _ _ _ _ b.NoZeroSMulDivisors _ _
 #align basis.smul_eq_zero Basis.smul_eq_zero
 
-/- warning: eq_bot_of_rank_eq_zero -> Basis.eq_bot_of_rank_eq_zero is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zeroₓ'. -/
 theorem Basis.eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N : Submodule R M)
     (rank_eq : ∀ {m : ℕ} (v : Fin m → N), LinearIndependent R (coe ∘ v : Fin m → M) → m = 0) :
     N = ⊥ := by
@@ -1148,28 +848,16 @@ protected def singleton (ι R : Type _) [Unique ι] [Semiring R] : Basis ι R R
 #align basis.singleton Basis.singleton
 -/
 
-/- warning: basis.singleton_apply -> Basis.singleton_apply is a dubious translation:
-lean 3 declaration is
-  forall (ι : Type.{u1}) (R : Type.{u2}) [_inst_6 : Unique.{succ u1} ι] [_inst_7 : Semiring.{u2} R] (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Basis.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) (fun (_x : Basis.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) => ι -> R) (FunLike.hasCoeToFun.{max (succ u1) (succ u2), succ u1, succ u2} (Basis.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) ι (fun (_x : ι) => R) (Basis.funLike.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) (Basis.singleton.{u1, u2} ι R _inst_6 _inst_7) i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))))))
-but is expected to have type
-  forall (ι : Type.{u2}) (R : Type.{u1}) [_inst_6 : Unique.{succ u2} ι] [_inst_7 : Semiring.{u1} R] (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => R) i) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Basis.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => R) _x) (Basis.funLike.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (Basis.singleton.{u2, u1} ι R _inst_6 _inst_7) i) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => R) i) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => R) i) (Semiring.toOne.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => R) i) _inst_7)))
-Case conversion may be inaccurate. Consider using '#align basis.singleton_apply Basis.singleton_applyₓ'. -/
 @[simp]
 theorem singleton_apply (ι R : Type _) [Unique ι] [Semiring R] (i) : Basis.singleton ι R i = 1 :=
   apply_eq_iff.mpr (by simp [Basis.singleton])
 #align basis.singleton_apply Basis.singleton_apply
 
-/- warning: basis.singleton_repr -> Basis.singleton_repr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.singleton_repr Basis.singleton_reprₓ'. -/
 @[simp]
 theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
     (Basis.singleton ι R).repr x i = x := by simp [Basis.singleton, Unique.eq_default i]
 #align basis.singleton_repr Basis.singleton_repr
 
-/- warning: basis.basis_singleton_iff -> Basis.basis_singleton_iff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.basis_singleton_iff Basis.basis_singleton_iffₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (x «expr ≠ » 0) -/
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
@@ -1252,12 +940,6 @@ def Module.fintypeOfFintype (b : Basis ι R M) [Fintype R] : Fintype M :=
 #align module.fintype_of_fintype Module.fintypeOfFintype
 -/
 
-/- warning: module.card_fintype -> Module.card_fintype is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall [_inst_7 : Fintype.{u2} R] [_inst_8 : Fintype.{u3} M], Eq.{1} Nat (Fintype.card.{u3} M _inst_8) (HPow.hPow.{0, 0, 0} Nat Nat Nat (instHPow.{0, 0} Nat Nat (Monoid.Pow.{0} Nat Nat.monoid)) (Fintype.card.{u2} R _inst_7) (Fintype.card.{u1} ι _inst_6)))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι], (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) -> (forall [_inst_7 : Fintype.{u2} R] [_inst_8 : Fintype.{u1} M], Eq.{1} Nat (Fintype.card.{u1} M _inst_8) (HPow.hPow.{0, 0, 0} Nat Nat Nat (instHPow.{0, 0} Nat Nat instPowNat) (Fintype.card.{u2} R _inst_7) (Fintype.card.{u3} ι _inst_6)))
-Case conversion may be inaccurate. Consider using '#align module.card_fintype Module.card_fintypeₓ'. -/
 theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M = card R ^ card ι :=
   by
   classical exact
@@ -1267,9 +949,6 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
         
 #align module.card_fintype Module.card_fintype
 
-/- warning: basis.equiv_fun_symm_apply -> Basis.equivFun_symm_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_symm_apply Basis.equivFun_symm_applyₓ'. -/
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
 @[simp]
@@ -1277,49 +956,31 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
   simp [Basis.equivFun, Finsupp.total_apply, Finsupp.sum_fintype]
 #align basis.equiv_fun_symm_apply Basis.equivFun_symm_apply
 
-/- warning: basis.equiv_fun_apply -> Basis.equivFun_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
   rfl
 #align basis.equiv_fun_apply Basis.equivFun_apply
 
-/- warning: basis.map_equiv_fun -> Basis.map_equivFun is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.map_equiv_fun Basis.map_equivFunₓ'. -/
 @[simp]
 theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
   rfl
 #align basis.map_equiv_fun Basis.map_equivFun
 
-/- warning: basis.sum_equiv_fun -> Basis.sum_equivFun is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.sum_equiv_fun Basis.sum_equivFunₓ'. -/
 theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
   by
   conv_rhs => rw [← b.total_repr u]
   simp [Finsupp.total_apply, Finsupp.sum_fintype, b.equiv_fun_apply]
 #align basis.sum_equiv_fun Basis.sum_equivFun
 
-/- warning: basis.sum_repr -> Basis.sum_repr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.sum_repr Basis.sum_reprₓ'. -/
 theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
   b.sum_equivFun u
 #align basis.sum_repr Basis.sum_repr
 
-/- warning: basis.equiv_fun_self -> Basis.equivFun_self is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_self Basis.equivFun_selfₓ'. -/
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
     b.equivFun (b i) j = if i = j then 1 else 0 := by rw [b.equiv_fun_apply, b.repr_self_apply]
 #align basis.equiv_fun_self Basis.equivFun_self
 
-/- warning: basis.repr_sum_self -> Basis.repr_sum_self is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_sum_self Basis.repr_sum_selfₓ'. -/
 theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) = c :=
   by
   ext j
@@ -1338,18 +999,12 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 #align basis.of_equiv_fun Basis.ofEquivFun
 -/
 
-/- warning: basis.of_equiv_fun_repr_apply -> Basis.ofEquivFun_repr_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
     (Basis.ofEquivFun e).repr x i = e x i :=
   rfl
 #align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_apply
 
-/- warning: basis.coe_of_equiv_fun -> Basis.coe_ofEquivFun is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coe_of_equiv_fun Basis.coe_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
     (Basis.ofEquivFun e : ι → M) = fun i => e.symm (Function.update 0 i 1) :=
@@ -1359,12 +1014,6 @@ theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
         simp [Basis.ofEquivFun, ← Finsupp.single_eq_pi_single, Finsupp.single_eq_update]
 #align basis.coe_of_equiv_fun Basis.coe_ofEquivFun
 
-/- warning: basis.of_equiv_fun_equiv_fun -> Basis.ofEquivFun_equivFun is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (v : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 v)) v
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (v : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 v)) v
-Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFunₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivFun = v := by
   classical
@@ -1374,12 +1023,6 @@ theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivF
     simp only [Finset.mem_univ, if_true, Pi.zero_apply, one_smul, Finset.sum_ite_eq', zero_smul]
 #align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFun
 
-/- warning: basis.equiv_fun_of_equiv_fun -> Basis.equivFun_ofEquivFun is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) e
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12306 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))), Eq.{max (max (succ u1) (succ u3)) (succ u2)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Basis.equivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) e
-Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_of_equiv_fun Basis.equivFun_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.equivFun_ofEquivFun (e : M ≃ₗ[R] ι → R) : (Basis.ofEquivFun e).equivFun = e :=
   by
@@ -1391,18 +1034,12 @@ variable (S : Type _) [Semiring S] [Module S M']
 
 variable [SMulCommClass R S M']
 
-/- warning: basis.constr_apply_fintype -> Basis.constr_apply_fintype is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
     (b.constr S f : M → M') x = ∑ i, b.equivFun x i • f i := by
   simp [b.constr_apply, b.equiv_fun_apply, Finsupp.sum_fintype]
 #align basis.constr_apply_fintype Basis.constr_apply_fintype
 
-/- warning: basis.mem_submodule_iff' -> Basis.mem_submodule_iff' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff' Basis.mem_submodule_iff'ₓ'. -/
 /-- If the submodule `P` has a finite basis,
 `x ∈ P` iff it is a linear combination of basis vectors. -/
 theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M} :
@@ -1412,9 +1049,6 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
       exists_congr fun c => by simp [Finsupp.sum_fintype]
 #align basis.mem_submodule_iff' Basis.mem_submodule_iff'
 
-/- warning: basis.coord_equiv_fun_symm -> Basis.coord_equivFun_symm is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
 #align basis.coord_equiv_fun_symm Basis.coord_equivFun_symm
@@ -1459,27 +1093,18 @@ def equiv' (f : M → M') (g : M' → M) (hf : ∀ i, f (b i) ∈ range b') (hg
 #align basis.equiv' Basis.equiv'
 -/
 
-/- warning: basis.equiv'_apply -> Basis.equiv'_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.equiv'_apply Basis.equiv'_applyₓ'. -/
 @[simp]
 theorem equiv'_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι) :
     b.equiv' b' f g hf hg hgf hfg (b i) = f (b i) :=
   b.constr_basis R _ _
 #align basis.equiv'_apply Basis.equiv'_apply
 
-/- warning: basis.equiv'_symm_apply -> Basis.equiv'_symm_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.equiv'_symm_apply Basis.equiv'_symm_applyₓ'. -/
 @[simp]
 theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι') :
     (b.equiv' b' f g hf hg hgf hfg).symm (b' i) = g (b' i) :=
   b'.constr_basis R _ _
 #align basis.equiv'_symm_apply Basis.equiv'_symm_apply
 
-/- warning: basis.sum_repr_mul_repr -> Basis.sum_repr_mul_repr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.sum_repr_mul_repr Basis.sum_repr_mul_reprₓ'. -/
 theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i : ι) :
     (∑ j : ι', b.repr (b' j) i * b'.repr x j) = b.repr x i :=
   by
@@ -1509,12 +1134,6 @@ variable (b : Basis ι R M)
 
 namespace Basis
 
-/- warning: basis.maximal -> Basis.maximal is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] [_inst_10 : Nontrivial.{u2} R] (b : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6), LinearIndependent.Maximal.{u2, u3, u1} ι R (Ring.toSemiring.{u2} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) b) (Basis.linearIndependent.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 b)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u3, u1} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] [_inst_10 : Nontrivial.{u3} R] (b : Basis.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6), LinearIndependent.Maximal.{u3, u1, u2} ι R (Ring.toSemiring.{u3} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) b) (Basis.linearIndependent.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 b)
-Case conversion may be inaccurate. Consider using '#align basis.maximal Basis.maximalₓ'. -/
 /-- Any basis is a maximal linear independent set.
 -/
 theorem maximal [Nontrivial R] (b : Basis ι R M) : b.LinearIndependent.Maximal := fun w hi h =>
@@ -1550,12 +1169,6 @@ section Mk
 
 variable (hli : LinearIndependent R v) (hsp : ⊤ ≤ span R (range v))
 
-/- warning: basis.mk -> Basis.mk is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
-Case conversion may be inaccurate. Consider using '#align basis.mk Basis.mkₓ'. -/
 /-- A linear independent family of vectors spanning the whole module is a basis. -/
 protected noncomputable def mk : Basis ι R M :=
   Basis.ofRepr
@@ -1568,30 +1181,15 @@ protected noncomputable def mk : Basis ι R M :=
       right_inv := fun x => hli.repr_eq rfl }
 #align basis.mk Basis.mk
 
-/- warning: basis.mk_repr -> Basis.mk_repr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
   rfl
 #align basis.mk_repr Basis.mk_repr
 
-/- warning: basis.mk_apply -> Basis.mk_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u2, u1, u3} ι R M v (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (Top.top.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u2} M ι v))) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Basis.mk.{u2, u1, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)
-Case conversion may be inaccurate. Consider using '#align basis.mk_apply Basis.mk_applyₓ'. -/
 theorem mk_apply (i : ι) : Basis.mk hli hsp i = v i :=
   show Finsupp.total _ _ _ v _ = v i by simp
 #align basis.mk_apply Basis.mk_apply
 
-/- warning: basis.coe_mk -> Basis.coe_mk is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) v
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] (hli : LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (hsp : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.mk.{u3, u1, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) v
-Case conversion may be inaccurate. Consider using '#align basis.coe_mk Basis.coe_mkₓ'. -/
 @[simp]
 theorem coe_mk : ⇑(Basis.mk hli hsp) = v :=
   funext (mk_apply _ _)
@@ -1599,21 +1197,12 @@ theorem coe_mk : ⇑(Basis.mk hli hsp) = v :=
 
 variable {hli hsp}
 
-/- warning: basis.mk_coord_apply_eq -> Basis.mk_coord_apply_eq is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v i)) (Ring.toSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v i)) _inst_1))))
-Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_eq Basis.mk_coord_apply_eqₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 1 on the `i`th element of the
 basis. -/
 theorem mk_coord_apply_eq (i : ι) : (Basis.mk hli hsp).Coord i (v i) = 1 :=
   show hli.repr ⟨v i, Submodule.subset_span (mem_range_self i)⟩ i = 1 by simp [hli.repr_eq_single i]
 #align basis.mk_coord_apply_eq Basis.mk_coord_apply_eq
 
-/- warning: basis.mk_coord_apply_ne -> Basis.mk_coord_apply_ne is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_ne Basis.mk_coord_apply_neₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 0 on the `j`th element of the
 basis if `j ≠ i`. -/
 theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i (v j) = 0 :=
@@ -1621,9 +1210,6 @@ theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i
     simp [hli.repr_eq_single j, h]
 #align basis.mk_coord_apply_ne Basis.mk_coord_apply_ne
 
-/- warning: basis.mk_coord_apply -> Basis.mk_coord_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply Basis.mk_coord_applyₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to the Kronecker delta on the
 `j`th element of the basis. -/
 theorem mk_coord_apply [DecidableEq ι] {i j : ι} :
@@ -1672,9 +1258,6 @@ protected theorem span_apply (i : ι) : (Basis.span hli i : M) = v i :=
 
 end Span
 
-/- warning: basis.group_smul_span_eq_top -> Basis.groupSmul_span_eq_top is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
@@ -1689,9 +1272,6 @@ theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Dis
   rwa [smul_one_smul, inv_smul_smul] at this
 #align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_top
 
-/- warning: basis.group_smul -> Basis.groupSmul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.group_smul Basis.groupSmulₓ'. -/
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` are elements of a group,
 `group_smul` provides the basis corresponding to `w • v`. -/
 def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
@@ -1700,32 +1280,17 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
     (groupSmul_span_eq_top v.span_eq).ge
 #align basis.group_smul Basis.groupSmul
 
-/- warning: basis.group_smul_apply -> Basis.groupSmul_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
     v.group_smul w i = (w • v : ι → M) i :=
   mk_apply (v.LinearIndependent.group_smul w) (groupSmul_span_eq_top v.span_eq).ge i
 #align basis.group_smul_apply Basis.groupSmul_apply
 
-/- warning: basis.units_smul_span_eq_top -> Basis.units_smul_span_eq_top is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16114 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16100 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
-Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
   groupSmul_span_eq_top hv
 #align basis.units_smul_span_eq_top Basis.units_smul_span_eq_top
 
-/- warning: basis.units_smul -> Basis.unitsSMul is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
-Case conversion may be inaccurate. Consider using '#align basis.units_smul Basis.unitsSMulₓ'. -/
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` is a unit, `smul_of_is_unit`
 provides the basis corresponding to `w • v`. -/
 def unitsSMul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
@@ -1733,19 +1298,10 @@ def unitsSMul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
     (units_smul_span_eq_top v.span_eq).ge
 #align basis.units_smul Basis.unitsSMul
 
-/- warning: basis.units_smul_apply -> Basis.unitsSMul_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.unitsSMul.{u1, u2, u3} ι R M _inst_1 _inst_3 _inst_6 v w) i) (SMul.smul.{u2, u3} (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) M (Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (w i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v i))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))} (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.unitsSMul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v w) i) (HSMul.hSMul.{u2, u1, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Units.instSMulUnits.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3) _inst_6)))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
-Case conversion may be inaccurate. Consider using '#align basis.units_smul_apply Basis.unitsSMul_applyₓ'. -/
 theorem unitsSMul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_smul w i = w i • v i :=
   mk_apply (v.LinearIndependent.units_smul w) (units_smul_span_eq_top v.span_eq).ge i
 #align basis.units_smul_apply Basis.unitsSMul_apply
 
-/- warning: basis.coord_units_smul -> Basis.coord_unitsSMul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coord_units_smul Basis.coord_unitsSMulₓ'. -/
 @[simp]
 theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     (e.units_smul w).Coord i = (w i)⁻¹ • e.Coord i := by
@@ -1762,32 +1318,17 @@ theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     · simp
 #align basis.coord_units_smul Basis.coord_unitsSMul
 
-/- warning: basis.repr_units_smul -> Basis.repr_unitsSMul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.repr_units_smul Basis.repr_unitsSMulₓ'. -/
 @[simp]
 theorem repr_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
     (e.units_smul w).repr v i = (w i)⁻¹ • e.repr v i :=
   congr_arg (fun f : M →ₗ[R₂] R₂ => f v) (e.coord_unitsSMul w i)
 #align basis.repr_units_smul Basis.repr_unitsSMul
 
-/- warning: basis.is_unit_smul -> Basis.isUnitSMul is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (forall {w : ι -> R}, (forall (i : ι), IsUnit.{u2} R (Ring.toMonoid.{u2} R _inst_1) (w i)) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (forall {w : ι -> R}, (forall (i : ι), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (w i)) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))
-Case conversion may be inaccurate. Consider using '#align basis.is_unit_smul Basis.isUnitSMulₓ'. -/
 /-- A version of `smul_of_units` that uses `is_unit`. -/
 def isUnitSMul (v : Basis ι R M) {w : ι → R} (hw : ∀ i, IsUnit (w i)) : Basis ι R M :=
   unitsSMul v fun i => (hw i).Unit
 #align basis.is_unit_smul Basis.isUnitSMul
 
-/- warning: basis.is_unit_smul_apply -> Basis.isUnitSMul_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (Ring.toMonoid.{u2} R _inst_1) (w i)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.isUnitSMul.{u1, u2, u3} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (w i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v i))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (w i)) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.isUnitSMul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3) _inst_6))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
-Case conversion may be inaccurate. Consider using '#align basis.is_unit_smul_apply Basis.isUnitSMul_applyₓ'. -/
 theorem isUnitSMul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (w i)) (i : ι) :
     v.isUnitSMul hw i = w i • v i :=
   unitsSMul_apply i
@@ -1795,9 +1336,6 @@ theorem isUnitSMul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (
 
 section Fin
 
-/- warning: basis.mk_fin_cons -> Basis.mkFinCons is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.mk_fin_cons Basis.mkFinConsₓ'. -/
 /-- Let `b` be a basis for a submodule `N` of `M`. If `y : M` is linear independent of `N`
 and `y` and `N` together span the whole of `M`, then there is a basis for `M`
 whose basis vectors are given by `fin.cons y b`. -/
@@ -1812,9 +1350,6 @@ noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fi
     fun x _ => by rw [Fin.range_cons, Submodule.mem_span_insert', span_b]; exact hsp x
 #align basis.mk_fin_cons Basis.mkFinCons
 
-/- warning: basis.coe_mk_fin_cons -> Basis.coe_mkFinCons is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons Basis.coe_mkFinConsₓ'. -/
 @[simp]
 theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R N)
     (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0) (hsp : ∀ z : M, ∃ c : R, z + c • y ∈ N) :
@@ -1822,9 +1357,6 @@ theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R
   coe_mk _ _
 #align basis.coe_mk_fin_cons Basis.coe_mkFinCons
 
-/- warning: basis.mk_fin_cons_of_le -> Basis.mkFinConsOfLe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.mk_fin_cons_of_le Basis.mkFinConsOfLeₓ'. -/
 /-- Let `b` be a basis for a submodule `N ≤ O`. If `y ∈ O` is linear independent of `N`
 and `y` and `N` together span the whole of `O`, then there is a basis for `O`
 whose basis vectors are given by `fin.cons y b`. -/
@@ -1835,9 +1367,6 @@ noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y
     (fun c x hc hx => hli c x (Submodule.mem_comap.mp hc) (congr_arg coe hx)) fun z => hsp z z.2
 #align basis.mk_fin_cons_of_le Basis.mkFinConsOfLe
 
-/- warning: basis.coe_mk_fin_cons_of_le -> Basis.coe_mkFinConsOfLe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLeₓ'. -/
 @[simp]
 theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
     (hNO : N ≤ O) (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0)
@@ -1847,42 +1376,21 @@ theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
   coe_mkFinCons _ _ _ _
 #align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLe
 
-/- warning: basis.fin_two_prod -> Basis.finTwoProd is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))
-but is expected to have type
-  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))
-Case conversion may be inaccurate. Consider using '#align basis.fin_two_prod Basis.finTwoProdₓ'. -/
 /-- The basis of `R × R` given by the two vectors `(1, 0)` and `(0, 1)`. -/
 protected def finTwoProd (R : Type _) [Semiring R] : Basis (Fin 2) R (R × R) :=
   Basis.ofEquivFun (LinearEquiv.finTwoArrow R R).symm
 #align basis.fin_two_prod Basis.finTwoProd
 
-/- warning: basis.fin_two_prod_zero -> Basis.finTwoProd_zero is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} (Prod.{u1, u1} R R) (coeFn.{succ u1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> (Prod.{u1, u1} R R)) (FunLike.hasCoeToFun.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) => Prod.{u1, u1} R R) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne)) (CharZero.NeZero.two.{0} Nat (AddCommMonoidWithOne.toAddMonoidWithOne.{0} Nat (NonAssocSemiring.toAddCommMonoidWithOne.{0} Nat (Semiring.toNonAssocSemiring.{0} Nat Nat.semiring))) (StrictOrderedSemiring.to_charZero.{0} Nat Nat.strictOrderedSemiring))))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))) (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))))
-but is expected to have type
-  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 0 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 0 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (FunLike.coe.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) _x) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 0 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 0 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_10))) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)))))
-Case conversion may be inaccurate. Consider using '#align basis.fin_two_prod_zero Basis.finTwoProd_zeroₓ'. -/
 @[simp]
 theorem finTwoProd_zero (R : Type _) [Semiring R] : Basis.finTwoProd R 0 = (1, 0) := by
   simp [Basis.finTwoProd]
 #align basis.fin_two_prod_zero Basis.finTwoProd_zero
 
-/- warning: basis.fin_two_prod_one -> Basis.finTwoProd_one is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} (Prod.{u1, u1} R R) (coeFn.{succ u1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> (Prod.{u1, u1} R R)) (FunLike.hasCoeToFun.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) => Prod.{u1, u1} R R) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne)) (CharZero.NeZero.two.{0} Nat (AddCommMonoidWithOne.toAddMonoidWithOne.{0} Nat (NonAssocSemiring.toAddCommMonoidWithOne.{0} Nat (Semiring.toNonAssocSemiring.{0} Nat Nat.semiring))) (StrictOrderedSemiring.to_charZero.{0} Nat Nat.strictOrderedSemiring))))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))))
-but is expected to have type
-  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 1 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 1 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (FunLike.coe.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) _x) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 1 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 1 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_10))))
-Case conversion may be inaccurate. Consider using '#align basis.fin_two_prod_one Basis.finTwoProd_oneₓ'. -/
 @[simp]
 theorem finTwoProd_one (R : Type _) [Semiring R] : Basis.finTwoProd R 1 = (0, 1) := by
   simp [Basis.finTwoProd]
 #align basis.fin_two_prod_one Basis.finTwoProd_one
 
-/- warning: basis.coe_fin_two_prod_repr -> Basis.coe_finTwoProd_repr is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coe_fin_two_prod_repr Basis.coe_finTwoProd_reprₓ'. -/
 @[simp]
 theorem coe_finTwoProd_repr {R : Type _} [Semiring R] (x : R × R) :
     ⇑((Basis.finTwoProd R).repr x) = ![x.fst, x.snd] :=
@@ -1901,9 +1409,6 @@ variable [Ring R] [IsDomain R]
 
 variable [AddCommGroup M] [Module R M] {b : ι → M}
 
-/- warning: submodule.induction_on_rank_aux -> Submodule.inductionOnRankAux is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align submodule.induction_on_rank_aux Submodule.inductionOnRankAuxₓ'. -/
 /-- If `N` is a submodule with finite rank, do induction on adjoining a linear independent
 element to a submodule. -/
 def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort _)
@@ -1960,36 +1465,21 @@ noncomputable def extend (hs : LinearIndependent K (coe : s → V)) : Basis _ K
 #align basis.extend Basis.extend
 -/
 
-/- warning: basis.extend_apply_self -> Basis.extend_apply_self is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.extend_apply_self Basis.extend_apply_selfₓ'. -/
 theorem extend_apply_self (hs : LinearIndependent K (coe : s → V)) (x : hs.extend _) :
     Basis.extend hs x = x :=
   Basis.mk_apply _ _ _
 #align basis.extend_apply_self Basis.extend_apply_self
 
-/- warning: basis.coe_extend -> Basis.coe_extend is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.coe_extend Basis.coe_extendₓ'. -/
 @[simp]
 theorem coe_extend (hs : LinearIndependent K (coe : s → V)) : ⇑(Basis.extend hs) = coe :=
   funext (extend_apply_self hs)
 #align basis.coe_extend Basis.coe_extend
 
-/- warning: basis.range_extend -> Basis.range_extend is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.range_extend Basis.range_extendₓ'. -/
 theorem range_extend (hs : LinearIndependent K (coe : s → V)) :
     range (Basis.extend hs) = hs.extend (subset_univ _) := by
   rw [coe_extend, Subtype.range_coe_subtype, set_of_mem_eq]
 #align basis.range_extend Basis.range_extend
 
-/- warning: basis.sum_extend -> Basis.sumExtend is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u2}} {K : Type.{u3}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u3} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u3, u1} K V (Ring.toSemiring.{u3} K (DivisionRing.toRing.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {v : ι -> V} (hs : LinearIndependent.{u2, u3, u1} ι K V v (Ring.toSemiring.{u3} K (DivisionRing.toRing.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Basis.{max u2 u1, u3, u1} (Sum.{u2, u1} ι (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (SDiff.sdiff.{u1} (Set.{u1} V) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} V) (Set.booleanAlgebra.{u1} V)) (LinearIndependent.extend.{u1, u3} K V _inst_1 _inst_2 _inst_4 (Set.range.{u1, succ u2} V ι v) (Set.univ.{u1} V) (Basis.sumExtend._proof_1.{u1, u2, u3} ι K V _inst_1 _inst_2 _inst_4 v hs) (Basis.sumExtend._proof_2.{u1, u2} ι V v)) (Set.range.{u1, succ u2} V ι v)))) K V (Ring.toSemiring.{u3} K (DivisionRing.toRing.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4
-but is expected to have type
-  forall {ι : Type.{u2}} {K : Type.{u3}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u3} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u3, u1} K V (DivisionSemiring.toSemiring.{u3} K (DivisionRing.toDivisionSemiring.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {v : ι -> V} (hs : LinearIndependent.{u2, u3, u1} ι K V v (DivisionSemiring.toSemiring.{u3} K (DivisionRing.toDivisionSemiring.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Basis.{max u1 u2, u3, u1} (Sum.{u2, u1} ι (Set.Elem.{u1} V (Basis.sumExtendIndex.{u1, u2, u3} ι K V _inst_1 _inst_2 _inst_4 v hs))) K V (DivisionSemiring.toSemiring.{u3} K (DivisionRing.toDivisionSemiring.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4
-Case conversion may be inaccurate. Consider using '#align basis.sum_extend Basis.sumExtendₓ'. -/
 /-- If `v` is a linear independent family of vectors, extend it to a basis indexed by a sum type. -/
 noncomputable def sumExtend (hs : LinearIndependent K v) : Basis (Sum ι _) K V :=
   let s := Set.range v
@@ -2005,12 +1495,6 @@ noncomputable def sumExtend (hs : LinearIndependent K v) : Basis (Sum ι _) K V
         
 #align basis.sum_extend Basis.sumExtend
 
-/- warning: basis.subset_extend -> Basis.subset_extend is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), HasSubset.Subset.{u1} (Set.{u1} V) (Set.hasSubset.{u1} V) s (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))
-but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), HasSubset.Subset.{u2} (Set.{u2} V) (Set.instHasSubsetSet.{u2} V) s (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))
-Case conversion may be inaccurate. Consider using '#align basis.subset_extend Basis.subset_extendₓ'. -/
 theorem subset_extend {s : Set V} (hs : LinearIndependent K (coe : s → V)) :
     s ⊆ hs.extend (Set.subset_univ _) :=
   hs.subset_extend _
@@ -2034,54 +1518,24 @@ noncomputable def ofVectorSpace : Basis (ofVectorSpaceIndex K V) K V :=
 #align basis.of_vector_space Basis.ofVectorSpace
 -/
 
-/- warning: basis.of_vector_space_apply_self -> Basis.ofVectorSpace_apply_self is a dubious translation:
-lean 3 declaration is
-  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)), Eq.{succ u1} V (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.ofVectorSpace.{u1, u2} K V _inst_1 _inst_2 _inst_4) x) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)))))) x)
-but is expected to have type
-  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4) x) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) x)
-Case conversion may be inaccurate. Consider using '#align basis.of_vector_space_apply_self Basis.ofVectorSpace_apply_selfₓ'. -/
 theorem ofVectorSpace_apply_self (x : ofVectorSpaceIndex K V) : ofVectorSpace K V x = x :=
   Basis.mk_apply _ _ _
 #align basis.of_vector_space_apply_self Basis.ofVectorSpace_apply_self
 
-/- warning: basis.coe_of_vector_space -> Basis.coe_ofVectorSpace is a dubious translation:
-lean 3 declaration is
-  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)], Eq.{succ u1} ((coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.ofVectorSpace.{u1, u2} K V _inst_1 _inst_2 _inst_4)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)))))))
-but is expected to have type
-  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], Eq.{succ u2} (forall (a : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)))
-Case conversion may be inaccurate. Consider using '#align basis.coe_of_vector_space Basis.coe_ofVectorSpaceₓ'. -/
 @[simp]
 theorem coe_ofVectorSpace : ⇑(ofVectorSpace K V) = coe :=
   funext fun x => ofVectorSpace_apply_self K V x
 #align basis.coe_of_vector_space Basis.coe_ofVectorSpace
 
-/- warning: basis.of_vector_space_index.linear_independent -> Basis.ofVectorSpaceIndex.linearIndependent is a dubious translation:
-lean 3 declaration is
-  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)], LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4))))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4
-but is expected to have type
-  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4))) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4))) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4
-Case conversion may be inaccurate. Consider using '#align basis.of_vector_space_index.linear_independent Basis.ofVectorSpaceIndex.linearIndependentₓ'. -/
 theorem ofVectorSpaceIndex.linearIndependent :
     LinearIndependent K (coe : ofVectorSpaceIndex K V → V) := by
   convert(of_vector_space K V).LinearIndependent; ext x; rw [of_vector_space_apply_self]
 #align basis.of_vector_space_index.linear_independent Basis.ofVectorSpaceIndex.linearIndependent
 
-/- warning: basis.range_of_vector_space -> Basis.range_ofVectorSpace is a dubious translation:
-lean 3 declaration is
-  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)], Eq.{succ u1} (Set.{u1} V) (Set.range.{u1, succ u1} V (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.ofVectorSpace.{u1, u2} K V _inst_1 _inst_2 _inst_4))) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)
-but is expected to have type
-  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], Eq.{succ u2} (Set.{u2} V) (Set.range.{u2, succ u2} V (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4))) (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)
-Case conversion may be inaccurate. Consider using '#align basis.range_of_vector_space Basis.range_ofVectorSpaceₓ'. -/
 theorem range_ofVectorSpace : range (ofVectorSpace K V) = ofVectorSpaceIndex K V :=
   range_extend _
 #align basis.range_of_vector_space Basis.range_ofVectorSpace
 
-/- warning: basis.exists_basis -> Basis.exists_basis is a dubious translation:
-lean 3 declaration is
-  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)], Exists.{succ u1} (Set.{u1} V) (fun (s : Set.{u1} V) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))
-but is expected to have type
-  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], Exists.{succ u2} (Set.{u2} V) (fun (s : Set.{u2} V) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Set.Elem.{u2} V s) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))
-Case conversion may be inaccurate. Consider using '#align basis.exists_basis Basis.exists_basisₓ'. -/
 theorem exists_basis : ∃ s : Set V, Nonempty (Basis s K V) :=
   ⟨ofVectorSpaceIndex K V, ⟨ofVectorSpace K V⟩⟩
 #align basis.exists_basis Basis.exists_basis
@@ -2096,12 +1550,6 @@ open Fintype
 
 variable (K V)
 
-/- warning: vector_space.card_fintype -> VectorSpace.card_fintype is a dubious translation:
-lean 3 declaration is
-  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_6 : Fintype.{u2} K] [_inst_7 : Fintype.{u1} V], Exists.{1} Nat (fun (n : Nat) => Eq.{1} Nat (Fintype.card.{u1} V _inst_7) (HPow.hPow.{0, 0, 0} Nat Nat Nat (instHPow.{0, 0} Nat Nat (Monoid.Pow.{0} Nat Nat.monoid)) (Fintype.card.{u2} K _inst_6) n))
-but is expected to have type
-  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] [_inst_6 : Fintype.{u1} K] [_inst_7 : Fintype.{u2} V], Exists.{1} Nat (fun (n : Nat) => Eq.{1} Nat (Fintype.card.{u2} V _inst_7) (HPow.hPow.{0, 0, 0} Nat Nat Nat (instHPow.{0, 0} Nat Nat instPowNat) (Fintype.card.{u1} K _inst_6) n))
-Case conversion may be inaccurate. Consider using '#align vector_space.card_fintype VectorSpace.card_fintypeₓ'. -/
 theorem VectorSpace.card_fintype [Fintype K] [Fintype V] : ∃ n : ℕ, card V = card K ^ n := by
   classical exact
       ⟨card (Basis.ofVectorSpaceIndex K V), Module.card_fintype (Basis.ofVectorSpace K V)⟩
@@ -2111,12 +1559,6 @@ section AtomsOfSubmoduleLattice
 
 variable {K V}
 
-/- warning: nonzero_span_atom -> nonzero_span_atom is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (v : V), (Ne.{succ u1} V v (OfNat.ofNat.{u1} V 0 (OfNat.mk.{u1} V 0 (Zero.zero.{u1} V (AddZeroClass.toHasZero.{u1} V (AddMonoid.toAddZeroClass.{u1} V (SubNegMonoid.toAddMonoid.{u1} V (AddGroup.toSubNegMonoid.{u1} V (AddCommGroup.toAddGroup.{u1} V _inst_2))))))))) -> (IsAtom.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) (Submodule.orderBot.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.span.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 (Singleton.singleton.{u1, u1} V (Set.{u1} V) (Set.hasSingleton.{u1} V) v)))
-but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (v : V), (Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) -> (IsAtom.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)))) (Submodule.instOrderBotSubmoduleToLEToPreorderInstPartialOrderSetLike.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.span.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 (Singleton.singleton.{u2, u2} V (Set.{u2} V) (Set.instSingletonSet.{u2} V) v)))
-Case conversion may be inaccurate. Consider using '#align nonzero_span_atom nonzero_span_atomₓ'. -/
 /-- For a module over a division ring, the span of a nonzero element is an atom of the
 lattice of submodules. -/
 theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodule K V) :=
@@ -2133,12 +1575,6 @@ theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodul
     simp_rw [← mul_smul, inv_mul_cancel h, one_smul, ha] at *; exact smul_mem T _ hs
 #align nonzero_span_atom nonzero_span_atom
 
-/- warning: atom_iff_nonzero_span -> atom_iff_nonzero_span is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (W : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Iff (IsAtom.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) (Submodule.orderBot.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) W) (Exists.{succ u1} V (fun (v : V) => Exists.{0} (Ne.{succ u1} V v (OfNat.ofNat.{u1} V 0 (OfNat.mk.{u1} V 0 (Zero.zero.{u1} V (AddZeroClass.toHasZero.{u1} V (AddMonoid.toAddZeroClass.{u1} V (SubNegMonoid.toAddMonoid.{u1} V (AddGroup.toSubNegMonoid.{u1} V (AddCommGroup.toAddGroup.{u1} V _inst_2))))))))) (fun (hv : Ne.{succ u1} V v (OfNat.ofNat.{u1} V 0 (OfNat.mk.{u1} V 0 (Zero.zero.{u1} V (AddZeroClass.toHasZero.{u1} V (AddMonoid.toAddZeroClass.{u1} V (SubNegMonoid.toAddMonoid.{u1} V (AddGroup.toSubNegMonoid.{u1} V (AddCommGroup.toAddGroup.{u1} V _inst_2))))))))) => Eq.{succ u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) W (Submodule.span.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 (Singleton.singleton.{u1, u1} V (Set.{u1} V) (Set.hasSingleton.{u1} V) v)))))
-but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (W : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Iff (IsAtom.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)))) (Submodule.instOrderBotSubmoduleToLEToPreorderInstPartialOrderSetLike.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) W) (Exists.{succ u2} V (fun (v : V) => Exists.{0} (Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) (fun (hv : Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) => Eq.{succ u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) W (Submodule.span.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 (Singleton.singleton.{u2, u2} V (Set.{u2} V) (Set.instSingletonSet.{u2} V) v)))))
-Case conversion may be inaccurate. Consider using '#align atom_iff_nonzero_span atom_iff_nonzero_spanₓ'. -/
 /-- The atoms of the lattice of submodules of a module over a division ring are the
 submodules equal to the span of a nonzero element of the module. -/
 theorem atom_iff_nonzero_span (W : Submodule K V) :
@@ -2167,9 +1603,6 @@ end AtomsOfSubmoduleLattice
 
 variable {K V}
 
-/- warning: linear_map.exists_left_inverse_of_injective -> LinearMap.exists_leftInverse_of_injective is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.exists_left_inverse_of_injective LinearMap.exists_leftInverse_of_injectiveₓ'. -/
 theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj : f.ker = ⊥) :
     ∃ g : V' →ₗ[K] V, g.comp f = LinearMap.id :=
   by
@@ -2196,12 +1629,6 @@ theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj :
   exact left_inverse_inv_fun (LinearMap.ker_eq_bot.1 hf_inj) _
 #align linear_map.exists_left_inverse_of_injective LinearMap.exists_leftInverse_of_injective
 
-/- warning: submodule.exists_is_compl -> Submodule.exists_isCompl is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Exists.{succ u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (q : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => IsCompl.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (CompleteLattice.toBoundedOrder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.completeLattice.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p q)
-but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Exists.{succ u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (fun (q : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) => IsCompl.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) (CompleteLattice.toBoundedOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) p q)
-Case conversion may be inaccurate. Consider using '#align submodule.exists_is_compl Submodule.exists_isComplₓ'. -/
 theorem Submodule.exists_isCompl (p : Submodule K V) : ∃ q : Submodule K V, IsCompl p q :=
   let ⟨f, hf⟩ := p.Subtype.exists_leftInverse_of_injective p.ker_subtype
   ⟨f.ker, LinearMap.isCompl_of_proj <| LinearMap.ext_iff.1 hf⟩
@@ -2213,9 +1640,6 @@ instance Module.Submodule.complementedLattice : ComplementedLattice (Submodule K
 #align module.submodule.complemented_lattice Module.Submodule.complementedLattice
 -/
 
-/- warning: linear_map.exists_right_inverse_of_surjective -> LinearMap.exists_rightInverse_of_surjective is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.exists_right_inverse_of_surjective LinearMap.exists_rightInverse_of_surjectiveₓ'. -/
 theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_surj : f.range = ⊤) :
     ∃ g : V' →ₗ[K] V, f.comp g = LinearMap.id :=
   by
@@ -2228,9 +1652,6 @@ theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_sur
   simp [right_inverse_inv_fun (LinearMap.range_eq_top.1 hf_surj) c]
 #align linear_map.exists_right_inverse_of_surjective LinearMap.exists_rightInverse_of_surjective
 
-/- warning: linear_map.exists_extend -> LinearMap.exists_extend is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.exists_extend LinearMap.exists_extendₓ'. -/
 /-- Any linear map `f : p →ₗ[K] V'` defined on a subspace `p` can be extended to the whole
 space. -/
 theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
@@ -2241,9 +1662,6 @@ theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
 
 open Submodule LinearMap
 
-/- warning: submodule.exists_le_ker_of_lt_top -> Submodule.exists_le_ker_of_lt_top is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_topₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
@@ -2261,9 +1679,6 @@ theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
     simpa using (LinearMap.congr_fun hf _).trans this
 #align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_top
 
-/- warning: quotient_prod_linear_equiv -> quotient_prod_linearEquiv is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align quotient_prod_linear_equiv quotient_prod_linearEquivₓ'. -/
 theorem quotient_prod_linearEquiv (p : Submodule K V) : Nonempty (((V ⧸ p) × p) ≃ₗ[K] V) :=
   let ⟨q, hq⟩ := p.exists_isCompl
   Nonempty.intro <|
@@ -2285,26 +1700,17 @@ variable (R)
 
 open Submodule
 
-/- warning: basis.restrict_scalars -> Basis.restrictScalars is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars Basis.restrictScalarsₓ'. -/
 /-- Let `b` be a `S`-basis of `M`. Let `R` be a comm_ring such that `algebra R S` with no zero
 smul divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
 noncomputable def Basis.restrictScalars : Basis ι R (span R (Set.range b)) :=
   Basis.span (b.LinearIndependent.restrictScalars (smul_left_injective R one_ne_zero))
 #align basis.restrict_scalars Basis.restrictScalars
 
-/- warning: basis.restrict_scalars_apply -> Basis.restrictScalars_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars_apply Basis.restrictScalars_applyₓ'. -/
 @[simp]
 theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i := by
   simp only [Basis.restrictScalars, Basis.span_apply]
 #align basis.restrict_scalars_apply Basis.restrictScalars_apply
 
-/- warning: basis.restrict_scalars_repr_apply -> Basis.restrictScalars_repr_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_applyₓ'. -/
 @[simp]
 theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
     algebraMap R S ((b.restrictScalars R).repr m i) = b.repr m i :=
@@ -2320,9 +1726,6 @@ theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
     Basis.restrictScalars_apply, LinearMap.coe_restrictScalars]
 #align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_apply
 
-/- warning: basis.mem_span_iff_repr_mem -> Basis.mem_span_iff_repr_mem is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.mem_span_iff_repr_mem Basis.mem_span_iff_repr_memₓ'. -/
 /-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
 coordinates of `m` on the basis `b` are in `R` (see `basis.mem_span` for the case `R = S`). -/
 theorem Basis.mem_span_iff_repr_mem (m : M) :
Diff
@@ -227,9 +227,7 @@ theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
 <too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_total Basis.repr_totalₓ'. -/
 @[simp]
-theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
-  by
-  rw [← b.coe_repr_symm]
+theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v := by rw [← b.coe_repr_symm];
   exact b.repr.apply_symm_apply v
 #align basis.repr_total Basis.repr_total
 
@@ -237,9 +235,7 @@ theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
 <too large>
 Case conversion may be inaccurate. Consider using '#align basis.total_repr Basis.total_reprₓ'. -/
 @[simp]
-theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
-  by
-  rw [← b.coe_repr_symm]
+theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x := by rw [← b.coe_repr_symm];
   exact b.repr.symm_apply_apply x
 #align basis.total_repr Basis.total_repr
 
@@ -460,9 +456,7 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
     show b.repr (b j) i = f (b j) i
     rw [b.repr_self, f_eq]
   calc
-    b.repr x i = f_i x := by
-      rw [← this]
-      rfl
+    b.repr x i = f_i x := by rw [← this]; rfl
     _ = f x i := rfl
     
 #align basis.repr_apply_eq Basis.repr_apply_eq
@@ -472,9 +466,7 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
 Case conversion may be inaccurate. Consider using '#align basis.eq_of_repr_eq_repr Basis.eq_ofRepr_eq_reprₓ'. -/
 /-- Two bases are equal if they assign the same coordinates. -/
 theorem eq_ofRepr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
-  repr_injective <| by
-    ext
-    apply h
+  repr_injective <| by ext; apply h
 #align basis.eq_of_repr_eq_repr Basis.eq_ofRepr_eq_repr
 
 /- warning: basis.eq_of_apply_eq -> Basis.eq_of_apply_eq is a dubious translation:
@@ -690,9 +682,7 @@ theorem reindexRange_repr_self (i : ι) :
 <too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_apply Basis.reindexRange_applyₓ'. -/
 @[simp]
-theorem reindexRange_apply (x : range b) : b.reindexRange x = x :=
-  by
-  rcases x with ⟨bi, ⟨i, rfl⟩⟩
+theorem reindexRange_apply (x : range b) : b.reindexRange x = x := by rcases x with ⟨bi, ⟨i, rfl⟩⟩;
   exact b.reindex_range_self i
 #align basis.reindex_range_apply Basis.reindexRange_apply
 
@@ -743,10 +733,8 @@ def reindexFinsetRange : Basis (Finset.univ.image b) R M :=
 <too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_self Basis.reindexFinsetRange_selfₓ'. -/
 theorem reindexFinsetRange_self (i : ι) (h := Finset.mem_image_of_mem b (Finset.mem_univ i)) :
-    b.reindexFinsetRange ⟨b i, h⟩ = b i :=
-  by
-  rw [reindex_finset_range, reindex_apply, reindex_range_apply]
-  rfl
+    b.reindexFinsetRange ⟨b i, h⟩ = b i := by
+  rw [reindex_finset_range, reindex_apply, reindex_range_apply]; rfl
 #align basis.reindex_finset_range_self Basis.reindexFinsetRange_self
 
 /- warning: basis.reindex_finset_range_apply -> Basis.reindexFinsetRange_apply is a dubious translation:
@@ -755,8 +743,7 @@ Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_r
 @[simp]
 theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRange x = x :=
   by
-  rcases x with ⟨bi, hbi⟩
-  rcases finset.mem_image.mp hbi with ⟨i, -, rfl⟩
+  rcases x with ⟨bi, hbi⟩; rcases finset.mem_image.mp hbi with ⟨i, -, rfl⟩
   exact b.reindex_finset_range_self i
 #align basis.reindex_finset_range_apply Basis.reindexFinsetRange_apply
 
@@ -873,18 +860,10 @@ def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M'
     where
   toFun f := (Finsupp.total M' M' R id).comp <| Finsupp.lmapDomain R R f ∘ₗ ↑b.repr
   invFun f i := f (b i)
-  left_inv f := by
-    ext
-    simp
-  right_inv f := by
-    refine' b.ext fun i => _
-    simp
-  map_add' f g := by
-    refine' b.ext fun i => _
-    simp
-  map_smul' c f := by
-    refine' b.ext fun i => _
-    simp
+  left_inv f := by ext; simp
+  right_inv f := by refine' b.ext fun i => _; simp
+  map_add' f g := by refine' b.ext fun i => _; simp
+  map_smul' c f := by refine' b.ext fun i => _; simp
 #align basis.constr Basis.constr
 -/
 
@@ -1002,10 +981,7 @@ but is expected to have type
 Case conversion may be inaccurate. Consider using '#align basis.map_equiv Basis.map_equivₓ'. -/
 @[simp]
 theorem map_equiv (b : Basis ι R M) (b' : Basis ι' R M') (e : ι ≃ ι') :
-    b.map (b.Equiv b' e) = b'.reindex e.symm :=
-  by
-  ext i
-  simp
+    b.map (b.Equiv b' e) = b'.reindex e.symm := by ext i; simp
 #align basis.map_equiv Basis.map_equiv
 
 end Equiv
@@ -1214,8 +1190,7 @@ theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup
               map_add' := fun y z => _
               map_smul' := fun c y => _ }⟩
     · rw [Finsupp.add_apply, add_smul]
-    · rw [Finsupp.smul_apply, smul_assoc]
-      simp
+    · rw [Finsupp.smul_apply, smul_assoc]; simp
     · refine' smul_left_injective _ nz _
       simp only [Finsupp.single_eq_same]
       exact (w (f default • x)).choose_spec
@@ -1351,11 +1326,8 @@ theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) =
   simp only [map_sum, LinearEquiv.map_smul, repr_self, Finsupp.smul_single, smul_eq_mul, mul_one,
     Finset.sum_apply']
   rw [Finset.sum_eq_single j, Finsupp.single_eq_same]
-  · rintro i - hi
-    exact Finsupp.single_eq_of_ne hi
-  · intros
-    have := Finset.mem_univ j
-    contradiction
+  · rintro i - hi; exact Finsupp.single_eq_of_ne hi
+  · intros ; have := Finset.mem_univ j; contradiction
 #align basis.repr_sum_self Basis.repr_sum_self
 
 #print Basis.ofEquivFun /-
@@ -1685,13 +1657,9 @@ protected noncomputable def span : Basis ι R (span R (range v)) :=
       (x : M) ∈
         map (Submodule.subtype (span R (range v)))
           (span R (Set.range fun i => Subtype.mk (v i) _)) :=
-      by
-      rw [h₂]
-      apply Subtype.mem x
+      by rw [h₂]; apply Subtype.mem x
     rcases mem_map.1 h₃ with ⟨y, hy₁, hy₂⟩
-    have h_x_eq_y : x = y := by
-      rw [Subtype.ext_iff, ← hy₂]
-      simp
+    have h_x_eq_y : x = y := by rw [Subtype.ext_iff, ← hy₂]; simp
     rwa [h_x_eq_y]
 #align basis.span Basis.span
 -/
@@ -1839,14 +1807,9 @@ noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fi
   have span_b : Submodule.span R (Set.range (N.Subtype ∘ b)) = N := by
     rw [Set.range_comp, Submodule.span_image, b.span_eq, Submodule.map_subtype_top]
   @Basis.mk _ _ _ (Fin.cons y (N.Subtype ∘ b) : Fin (n + 1) → M) _ _ _
-    ((b.LinearIndependent.map' N.Subtype (Submodule.ker_subtype _)).fin_cons' _ _ <|
-      by
-      rintro c ⟨x, hx⟩ hc
-      rw [span_b] at hx
-      exact hli c x hx hc)
-    fun x _ => by
-    rw [Fin.range_cons, Submodule.mem_span_insert', span_b]
-    exact hsp x
+    ((b.LinearIndependent.map' N.Subtype (Submodule.ker_subtype _)).fin_cons' _ _ <| by
+      rintro c ⟨x, hx⟩ hc; rw [span_b] at hx; exact hli c x hx hc)
+    fun x _ => by rw [Fin.range_cons, Submodule.mem_span_insert', span_b]; exact hsp x
 #align basis.mk_fin_cons Basis.mkFinCons
 
 /- warning: basis.coe_mk_fin_cons -> Basis.coe_mkFinCons is a dubious translation:
@@ -1965,8 +1928,7 @@ def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort
   intro m v hli
   refine' nat.succ_le_succ_iff.mp (rank_le (Fin.cons ⟨x, x_mem⟩ fun i => ⟨v i, N'_le (v i).2⟩) _)
   convert hli.fin_cons' x _ _
-  · ext i
-    refine' Fin.cases _ _ i <;> simp
+  · ext i; refine' Fin.cases _ _ i <;> simp
   · intro c y hcy
     refine' x_ortho c y (submodule.span_le.mpr _ y.2) hcy
     rintro _ ⟨z, rfl⟩
@@ -2100,11 +2062,8 @@ but is expected to have type
   forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4))) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4))) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4
 Case conversion may be inaccurate. Consider using '#align basis.of_vector_space_index.linear_independent Basis.ofVectorSpaceIndex.linearIndependentₓ'. -/
 theorem ofVectorSpaceIndex.linearIndependent :
-    LinearIndependent K (coe : ofVectorSpaceIndex K V → V) :=
-  by
-  convert(of_vector_space K V).LinearIndependent
-  ext x
-  rw [of_vector_space_apply_self]
+    LinearIndependent K (coe : ofVectorSpaceIndex K V → V) := by
+  convert(of_vector_space K V).LinearIndependent; ext x; rw [of_vector_space_apply_self]
 #align basis.of_vector_space_index.linear_independent Basis.ofVectorSpaceIndex.linearIndependent
 
 /- warning: basis.range_of_vector_space -> Basis.range_ofVectorSpace is a dubious translation:
@@ -2163,22 +2122,15 @@ lattice of submodules. -/
 theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodule K V) :=
   by
   constructor
-  · rw [Submodule.ne_bot_iff]
-    exact ⟨v, ⟨mem_span_singleton_self v, hv⟩⟩
-  · intro T hT
-    by_contra
-    apply hT.2
+  · rw [Submodule.ne_bot_iff]; exact ⟨v, ⟨mem_span_singleton_self v, hv⟩⟩
+  · intro T hT; by_contra; apply hT.2
     change span K {v} ≤ T
     simp_rw [span_singleton_le_iff_mem, ← Ne.def, Submodule.ne_bot_iff] at *
     rcases h with ⟨s, ⟨hs, hz⟩⟩
     cases' mem_span_singleton.1 (hT.1 hs) with a ha
-    have h : a ≠ 0 := by
-      intro h
-      rw [h, zero_smul] at ha
-      exact hz ha.symm
+    have h : a ≠ 0 := by intro h; rw [h, zero_smul] at ha; exact hz ha.symm
     apply_fun fun x => a⁻¹ • x  at ha
-    simp_rw [← mul_smul, inv_mul_cancel h, one_smul, ha] at *
-    exact smul_mem T _ hs
+    simp_rw [← mul_smul, inv_mul_cancel h, one_smul, ha] at *; exact smul_mem T _ hs
 #align nonzero_span_atom nonzero_span_atom
 
 /- warning: atom_iff_nonzero_span -> atom_iff_nonzero_span is a dubious translation:
@@ -2200,8 +2152,7 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
     specialize h (span K {v})
     rw [span_singleton_eq_bot, lt_iff_le_and_ne] at h
     exact hv (h ⟨(span_singleton_le_iff_mem v W).2 hW, Ne.symm HEq⟩)
-  · rcases h with ⟨v, ⟨hv, rfl⟩⟩
-    exact nonzero_span_atom v hv
+  · rcases h with ⟨v, ⟨hv, rfl⟩⟩; exact nonzero_span_atom v hv
 #align atom_iff_nonzero_span atom_iff_nonzero_span
 
 /-- The lattice of submodules of a module over a division ring is atomistic. -/
@@ -2302,8 +2253,7 @@ theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
   rcases SetLike.exists_of_lt hp with ⟨v, -, hpv⟩; clear hp
   rcases(LinearPMap.supSpanSingleton ⟨p, 0⟩ v (1 : K) hpv).toFun.exists_extend with ⟨f, hf⟩
   refine' ⟨f, _, _⟩
-  · rintro rfl
-    rw [LinearMap.zero_comp] at hf
+  · rintro rfl; rw [LinearMap.zero_comp] at hf
     have := LinearPMap.supSpanSingleton_apply_mk ⟨p, 0⟩ v (1 : K) hpv 0 p.zero_mem 1
     simpa using (LinearMap.congr_fun hf _).trans this
   · refine' fun x hx => mem_ker.2 _
Diff
@@ -152,10 +152,7 @@ instance funLike : FunLike (Basis ι R M) ι fun _ => M
 -/
 
 /- warning: basis.coe_of_repr -> Basis.coe_ofRepr is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofRepr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (e : LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))), Eq.{max (succ u1) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofRepr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u1) (succ u3), succ u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (_x : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u1 u3, u2, max (max u1 u3) u2} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u1 u3, u2, max (max u1 u3) u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u1 u3, u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) e) (Finsupp.single.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) i (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_repr Basis.coe_ofReprₓ'. -/
 @[simp]
 theorem coe_ofRepr (e : M ≃ₗ[R] ι →₀ R) : ⇑(ofRepr e) = fun i => e.symm (Finsupp.single i 1) :=
@@ -173,20 +170,14 @@ protected theorem injective [Nontrivial R] : Injective b :=
 #align basis.injective Basis.injective
 
 /- warning: basis.repr_symm_single_one -> Basis.repr_symm_single_one is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single_one Basis.repr_symm_single_oneₓ'. -/
 theorem repr_symm_single_one : b.repr.symm (Finsupp.single i 1) = b i :=
   rfl
 #align basis.repr_symm_single_one Basis.repr_symm_single_one
 
 /- warning: basis.repr_symm_single -> Basis.repr_symm_single is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i c)) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) c (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single Basis.repr_symm_singleₓ'. -/
 theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
   calc
@@ -197,10 +188,7 @@ theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
 #align basis.repr_symm_single Basis.repr_symm_single
 
 /- warning: basis.repr_self -> Basis.repr_self is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_self Basis.repr_selfₓ'. -/
 @[simp]
 theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
@@ -208,20 +196,14 @@ theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
 #align basis.repr_self Basis.repr_self
 
 /- warning: basis.repr_self_apply -> Basis.repr_self_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u1} ι i j)], Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) _inst_6 (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u3} ι i j)], Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) j) (ite.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Eq.{succ u3} ι i j) _inst_6 (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_self_apply Basis.repr_self_applyₓ'. -/
 theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then 1 else 0 := by
   rw [repr_self, Finsupp.single_apply]
 #align basis.repr_self_apply Basis.repr_self_apply
 
 /- warning: basis.repr_symm_apply -> Basis.repr_symm_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) v) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_apply Basis.repr_symm_applyₓ'. -/
 @[simp]
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
@@ -234,10 +216,7 @@ theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
 #align basis.repr_symm_apply Basis.repr_symm_apply
 
 /- warning: basis.coe_repr_symm -> Basis.coe_repr_symm is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) ((fun (a : Sort.{max (succ (max u1 u2)) (succ u3)}) (b : Sort.{max (succ (max u1 u2)) (succ u3)}) [self : HasLiftT.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} a b] => self.0) (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (HasLiftT.mk.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (CoeTCₓ.coe.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (coeBase.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearEquiv.LinearMap.hasCoe.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearEquiv.toLinearMap.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coe_repr_symm Basis.coe_repr_symmₓ'. -/
 @[simp]
 theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
@@ -245,10 +224,7 @@ theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
 #align basis.coe_repr_symm Basis.coe_repr_symm
 
 /- warning: basis.repr_total -> Basis.repr_total is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)) v
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_total Basis.repr_totalₓ'. -/
 @[simp]
 theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
@@ -258,10 +234,7 @@ theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
 #align basis.repr_total Basis.repr_total
 
 /- warning: basis.total_repr -> Basis.total_repr is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.total_repr Basis.total_reprₓ'. -/
 @[simp]
 theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
@@ -271,20 +244,14 @@ theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
 #align basis.total_repr Basis.total_repr
 
 /- warning: basis.repr_range -> Basis.repr_range is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ (max u1 u2)} (Submodule.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.range.{u2, u2, u3, max u1 u2, max u3 u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.semilinearMapClass.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.supported.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) (Set.univ.{u1} ι))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (Submodule.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.range.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.semilinearMapClass.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.supported.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) (Set.univ.{u3} ι))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_range Basis.repr_rangeₓ'. -/
 theorem repr_range : (b.repr : M →ₗ[R] ι →₀ R).range = Finsupp.supported R R univ := by
   rw [LinearEquiv.range, Finsupp.supported_univ]
 #align basis.repr_range Basis.repr_range
 
 /- warning: basis.mem_span_repr_support -> Basis.mem_span_repr_support is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
-but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.mem_span_repr_support Basis.mem_span_repr_supportₓ'. -/
 theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
     m ∈ span R (b '' (b.repr m).support) :=
@@ -292,10 +259,7 @@ theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
 #align basis.mem_span_repr_support Basis.mem_span_repr_support
 
 /- warning: basis.repr_support_subset_of_mem_span -> Basis.repr_support_subset_of_mem_span is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.hasSubset.{u3} ι) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
-but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.instHasSubsetSet.{u3} ι) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_support_subset_of_mem_span Basis.repr_support_subset_of_mem_spanₓ'. -/
 theorem repr_support_subset_of_mem_span {ι : Type _} (b : Basis ι R M) (s : Set ι) {m : M}
     (hm : m ∈ span R (b '' s)) : ↑(b.repr m).support ⊆ s :=
@@ -340,10 +304,7 @@ noncomputable def sumCoords : M →ₗ[R] R :=
 -/
 
 /- warning: basis.coe_sum_coords -> Basis.coe_sumCoords is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u2, u2} ι R R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u2} R))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u3, u3} ι R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u3} R))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords Basis.coe_sumCoordsₓ'. -/
 @[simp]
 theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i => id :=
@@ -402,10 +363,7 @@ theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
 #align basis.dvd_coord_smul Basis.dvd_coord_smul
 
 /- warning: basis.coord_repr_symm -> Basis.coord_repr_symm is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) f i)
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) f i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coord_repr_symm Basis.coord_repr_symmₓ'. -/
 theorem coord_repr_symm (b : Basis ι R M) (i : ι) (f : ι →₀ R) : b.Coord i (b.repr.symm f) = f i :=
   by simp only [repr_symm_apply, coord_apply, repr_total]
@@ -422,10 +380,7 @@ variable [RingHomInvPair σ σ'] [RingHomInvPair σ' σ]
 variable {M₁ : Type _} [AddCommMonoid M₁] [Module R₁ M₁]
 
 /- warning: basis.ext -> Basis.ext is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u2, u4} R R₁ (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u5}} [_inst_9 : AddCommMonoid.{u5} M₁] [_inst_10 : Module.{u4, u5} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u5} M₁ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.ext Basis.extₓ'. -/
 /-- Two linear maps are equal if they are equal on basis vectors. -/
 theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
@@ -438,10 +393,7 @@ theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
 include σ'
 
 /- warning: basis.ext' -> Basis.ext' is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u2, u4} R R₁ (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {σ' : RingHom.{u4, u2} R₁ R (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6) (Semiring.toNonAssocSemiring.{u2} R _inst_1)} [_inst_7 : RingHomInvPair.{u2, u4} R R₁ _inst_1 _inst_6 σ σ'] [_inst_8 : RingHomInvPair.{u4, u2} R₁ R _inst_6 _inst_1 σ' σ] {M₁ : Type.{u5}} [_inst_9 : AddCommMonoid.{u5} M₁] [_inst_10 : Module.{u4, u5} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u5} M₁ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearEquiv.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8) f₁ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearEquiv.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8) f₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {σ' : RingHom.{u4, u5} R₁ R (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6) (Semiring.toNonAssocSemiring.{u5} R _inst_1)} [_inst_7 : RingHomInvPair.{u5, u4} R R₁ _inst_1 _inst_6 σ σ'] [_inst_8 : RingHomInvPair.{u4, u5} R₁ R _inst_6 _inst_1 σ' σ] {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.ext' Basis.ext'ₓ'. -/
 /-- Two linear equivs are equal if they are equal on basis vectors. -/
 theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
@@ -454,10 +406,7 @@ theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
 omit σ'
 
 /- warning: basis.ext_elem_iff -> Basis.ext_elem_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.ext_elem_iff Basis.ext_elem_iffₓ'. -/
 /-- Two elements are equal iff their coordinates are equal. -/
 theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
@@ -465,19 +414,13 @@ theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
 #align basis.ext_elem_iff Basis.ext_elem_iff
 
 /- warning: basis.ext_elem -> Basis.ext_elem is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.ext_elem Basis.ext_elemₓ'. -/
 alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 #align basis.ext_elem Basis.ext_elem
 
 /- warning: basis.repr_eq_iff -> Basis.repr_eq_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff Basis.repr_eq_iffₓ'. -/
 theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
     ↑b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
@@ -485,10 +428,7 @@ theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
 #align basis.repr_eq_iff Basis.repr_eq_iff
 
 /- warning: basis.repr_eq_iff' -> Basis.repr_eq_iff' is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff' Basis.repr_eq_iff'ₓ'. -/
 theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
     b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
@@ -496,20 +436,14 @@ theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
 #align basis.repr_eq_iff' Basis.repr_eq_iff'
 
 /- warning: basis.apply_eq_iff -> Basis.apply_eq_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) x) (Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) x) (Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.apply_eq_iff Basis.apply_eq_iffₓ'. -/
 theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x = Finsupp.single i 1 :=
   ⟨fun h => h ▸ b.repr_self i, fun h => b.repr.Injective ((b.repr_self i).trans h.symm)⟩
 #align basis.apply_eq_iff Basis.apply_eq_iff
 
 /- warning: basis.repr_apply_eq -> Basis.repr_apply_eq is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u1 u2} (ι -> R) (Pi.instAdd.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (SMul.smul.{u2, max u1 u2} R (ι -> R) (Function.hasSMul.{u1, u2, u2} ι R R (Mul.toSMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))) -> (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u3 u2} (ι -> R) (Pi.instAdd.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u2, u1} R M _inst_1 _inst_2 _inst_3))))) c x)) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (ι -> R) (ι -> R) (instHSMul.{u2, max u3 u2} R (ι -> R) (Pi.instSMul.{u3, u2, u2} ι R (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.3682 : ι) => R) (fun (i : ι) => SMulZeroClass.toSMul.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MulZeroClass.toSMulWithZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))) -> (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_apply_eq Basis.repr_apply_eqₓ'. -/
 /-- An unbundled version of `repr_eq_iff` -/
 theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f y)
@@ -534,10 +468,7 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
 #align basis.repr_apply_eq Basis.repr_apply_eq
 
 /- warning: basis.eq_of_repr_eq_repr -> Basis.eq_ofRepr_eq_repr is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b₁ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.eq_of_repr_eq_repr Basis.eq_ofRepr_eq_reprₓ'. -/
 /-- Two bases are equal if they assign the same coordinates. -/
 theorem eq_ofRepr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
@@ -573,10 +504,7 @@ protected def map : Basis ι R M' :=
 -/
 
 /- warning: basis.map_apply -> Basis.map_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (i : ι), Eq.{succ u4} M' (coeFn.{max (succ u1) (succ u2) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) => ι -> M') (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) ι (fun (_x : ι) => M') (Basis.funLike.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5)) (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f) i) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M') i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M') _x) (Basis.funLike.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) (Basis.map.{u3, u2, u1, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f) i) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M') _x) (SMulHomClass.toFunLike.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u2, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u2, u4} R M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u4, max u1 u4} R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u4, max u1 u4} R R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.map_apply Basis.map_applyₓ'. -/
 @[simp]
 theorem map_apply (i) : b.map f i = f (b i) :=
@@ -595,10 +523,7 @@ include f h b
 attribute [local instance] SMul.comp.isScalarTower
 
 /- warning: basis.map_coeffs -> Basis.mapCoeffs is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u4, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M M (instHSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (SMulZeroClass.toSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (MonoidWithZero.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u2) (succ u4), succ u2, succ u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') _x) (MulHomClass.toFunLike.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3))))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.map_coeffs Basis.mapCoeffsₓ'. -/
 /-- If `R` and `R'` are isomorphic rings that act identically on a module `M`,
 then a basis for `M` as `R`-module is also a basis for `M` as `R'`-module.
@@ -618,20 +543,14 @@ def mapCoeffs : Basis ι R' M :=
 #align basis.map_coeffs Basis.mapCoeffs
 
 /- warning: basis.map_coeffs_apply -> Basis.mapCoeffs_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u4} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u4} M (HSMul.hSMul.{u2, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M M (instHSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u4, u4} R M M (instHSMul.{u1, u4} R M (SMulZeroClass.toSMul.{u1, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u4} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u4} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u1, u4} R M _inst_1 _inst_2 _inst_3))))) c x)) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u3, succ u4} (Basis.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u3, u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, succ u4} (Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) b i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.map_coeffs_apply Basis.mapCoeffs_applyₓ'. -/
 theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
   apply_eq_iff.mpr <| by simp [f.to_add_equiv_eq_coe]
 #align basis.map_coeffs_apply Basis.mapCoeffs_apply
 
 /- warning: basis.coe_map_coeffs -> Basis.coe_mapCoeffs is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)
-but is expected to have type
-  forall {ι : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u2, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M M (instHSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_2 _inst_3))))) c x)), Eq.{max (succ u4) (succ u3)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u3} (Basis.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u4, u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u3), succ u4, succ u3} (Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coe_map_coeffs Basis.coe_mapCoeffsₓ'. -/
 @[simp]
 theorem coe_mapCoeffs : (b.mapCoeffs f h : ι → M) = b :=
@@ -678,20 +597,14 @@ theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
 #align basis.coe_reindex Basis.coe_reindex
 
 /- warning: basis.repr_reindex_apply -> Basis.repr_reindex_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u3} R (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.coeFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
-but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u4}} {M : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u4, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) i') (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u3 u4, max (max u3 u4) u2} R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u3 u4, max (max u3 u4) u2} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u3 u4} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u3, u4, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u3, u4, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u4)) (succ u2), succ u2, max (succ u1) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u1 u4, max (max u1 u4) u2} R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u1 u4, max (max u1 u4) u2} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u1 u4} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_reindex_apply Basis.repr_reindex_applyₓ'. -/
 theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.symm i') :=
   show (Finsupp.domLCongr e : _ ≃ₗ[R] _) (b.repr x) i' = _ by simp
 #align basis.repr_reindex_apply Basis.repr_reindex_apply
 
 /- warning: basis.repr_reindex -> Basis.repr_reindex is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u2, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x))
-but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) x) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u2, max (succ u4) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u4 u3, max (max u4 u3) u2} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u4 u3, max (max u4 u3) u2} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u4 u3} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u4, u3, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u4, u3, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u4, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} ι ι') e) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) x))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_reindex Basis.repr_reindexₓ'. -/
 @[simp]
 theorem repr_reindex : (b.reindex e).repr x = (b.repr x).mapDomain e :=
@@ -748,10 +661,7 @@ def reindexRange : Basis (range b) R M :=
 -/
 
 /- warning: basis.reindex_range_self -> Basis.reindexRange_self is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.range.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) (Set.mem_range_self.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) i)), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) _x) (Basis.funLike.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_self Basis.reindexRange_selfₓ'. -/
 theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange ⟨b i, h⟩ = b i :=
   by
@@ -765,10 +675,7 @@ theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange
 #align basis.reindex_range_self Basis.reindexRange_self
 
 /- warning: basis.reindex_range_repr_self -> Basis.reindexRange_repr_self is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.mem_range_self.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.mem_range_self.{succ u1, u2} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr_self Basis.reindexRange_repr_selfₓ'. -/
 theorem reindexRange_repr_self (i : ι) :
     b.reindexRange.repr (b i) = Finsupp.single ⟨b i, mem_range_self i⟩ 1 :=
@@ -780,10 +687,7 @@ theorem reindexRange_repr_self (i : ι) :
 #align basis.reindex_range_repr_self Basis.reindexRange_repr_self
 
 /- warning: basis.reindex_range_apply -> Basis.reindexRange_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))))))) x)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) _x) (Basis.funLike.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) x)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_apply Basis.reindexRange_applyₓ'. -/
 @[simp]
 theorem reindexRange_apply (x : range b) : b.reindexRange x = x :=
@@ -793,10 +697,7 @@ theorem reindexRange_apply (x : range b) : b.reindexRange x = x :=
 #align basis.reindex_range_apply Basis.reindexRange_apply
 
 /- warning: basis.reindex_range_repr' -> Basis.reindexRange_repr' is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) bi), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) bi (Exists.intro.{succ u1} ι (fun (y : ι) => Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b y) bi) i h))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) bi), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr' Basis.reindexRange_repr'ₓ'. -/
 theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
     b.reindexRange.repr x ⟨bi, ⟨i, h⟩⟩ = b.repr x i :=
@@ -818,10 +719,7 @@ theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
 #align basis.reindex_range_repr' Basis.reindexRange_repr'
 
 /- warning: basis.reindex_range_repr -> Basis.reindexRange_repr is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.range.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) (Set.mem_range_self.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) i)), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr Basis.reindexRange_reprₓ'. -/
 @[simp]
 theorem reindexRange_repr (x : M) (i : ι) (h := Set.mem_range_self i) :
@@ -842,10 +740,7 @@ def reindexFinsetRange : Basis (Finset.univ.image b) R M :=
 -/
 
 /- warning: basis.reindex_finset_range_self -> Basis.reindexFinsetRange_self is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) _x) (Basis.funLike.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_self Basis.reindexFinsetRange_selfₓ'. -/
 theorem reindexFinsetRange_self (i : ι) (h := Finset.mem_image_of_mem b (Finset.mem_univ i)) :
     b.reindexFinsetRange ⟨b i, h⟩ = b i :=
@@ -855,10 +750,7 @@ theorem reindexFinsetRange_self (i : ι) (h := Finset.mem_image_of_mem b (Finset
 #align basis.reindex_finset_range_self Basis.reindexFinsetRange_self
 
 /- warning: basis.reindex_finset_range_apply -> Basis.reindexFinsetRange_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) x) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))))))) x)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) _x) (Basis.funLike.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) x) (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) x)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_apply Basis.reindexFinsetRange_applyₓ'. -/
 @[simp]
 theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRange x = x :=
@@ -869,10 +761,7 @@ theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRang
 #align basis.reindex_finset_range_apply Basis.reindexFinsetRange_apply
 
 /- warning: basis.reindex_finset_range_repr_self -> Basis.reindexFinsetRange_repr_self is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u2} M] (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.mem_image_of_mem.{u2, u1} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr_self Basis.reindexFinsetRange_repr_selfₓ'. -/
 theorem reindexFinsetRange_repr_self (i : ι) :
     b.reindexFinsetRange.repr (b i) =
@@ -885,10 +774,7 @@ theorem reindexFinsetRange_repr_self (i : ι) :
 #align basis.reindex_finset_range_repr_self Basis.reindexFinsetRange_repr_self
 
 /- warning: basis.reindex_finset_range_repr -> Basis.reindexFinsetRange_repr is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) _x) (Finsupp.funLike.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr Basis.reindexFinsetRange_reprₓ'. -/
 @[simp]
 theorem reindexFinsetRange_repr (x : M) (i : ι)
@@ -956,10 +842,7 @@ theorem index_nonempty (b : Basis ι R M) [Nontrivial M] : Nonempty ι :=
 #align basis.index_nonempty Basis.index_nonempty
 
 /- warning: basis.mem_submodule_iff -> Basis.mem_submodule_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {P : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (c : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => Eq.{succ u3} M x (Finsupp.sum.{u1, u2, u3} ι R M (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 c (fun (i : ι) (x : R) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) x ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P)) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P))) b i))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (c : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => Eq.{succ u2} M x (Finsupp.sum.{u1, u3, u2} ι R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_2 c (fun (i : ι) (x : R) => HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _x) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff Basis.mem_submodule_iffₓ'. -/
 /-- If the submodule `P` has a basis, `x ∈ P` iff it is a linear combination of basis vectors. -/
 theorem mem_submodule_iff {P : Submodule R M} (b : Basis ι R P) {x : M} :
@@ -1006,10 +889,7 @@ def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M'
 -/
 
 /- warning: basis.constr_def -> Basis.constr_def is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u2, u2, u2, u3, max u4 u2, u4} R R R M (Finsupp.{u4, u2} M' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u4, u4, u2} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u2, u2, u2, u3, max u1 u2, max u4 u2} R R R M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (Finsupp.{u4, u2} M' R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.lmapDomain.{u1, u2, u2, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) M' f) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))))
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u5) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), max (succ u2) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u5 u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u5, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u3, u3, u3, u5, max u3 u4, u4} R R R M (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.total.{u4, u4, u3} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u3, u3, u3, u5, max u3 u2, max u3 u4} R R R M (Finsupp.{u2, u3} ι R (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.lmapDomain.{u2, u3, u3, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1) M' f) (LinearEquiv.toLinearMap.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.constr_def Basis.constr_defₓ'. -/
 theorem constr_def (f : ι → M') :
     b.constr S f = Finsupp.total M' M' R id ∘ₗ Finsupp.lmapDomain R R f ∘ₗ ↑b.repr :=
@@ -1017,10 +897,7 @@ theorem constr_def (f : ι → M') :
 #align basis.constr_def Basis.constr_def
 
 /- warning: basis.constr_apply -> Basis.constr_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u1, u2, u4} ι R M' (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) a (f b)))
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply Basis.constr_applyₓ'. -/
 theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum fun b a => a • f b :=
   by
@@ -1029,10 +906,7 @@ theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum f
 #align basis.constr_apply Basis.constr_apply
 
 /- warning: basis.constr_basis -> Basis.constr_basis is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (f i)
-but is expected to have type
-  forall {ι : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), max (succ u4) (succ u5), max (succ u2) (succ u5)} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u4 u5} S (ι -> M') (AddMonoid.toZero.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u4 u5, max u2 u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u4, u3, u2, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (f i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.constr_basis Basis.constr_basisₓ'. -/
 @[simp]
 theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i) = f i := by
@@ -1040,30 +914,21 @@ theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i)
 #align basis.constr_basis Basis.constr_basis
 
 /- warning: basis.constr_eq -> Basis.constr_eq is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u4} M' (g i) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u3} M' (g i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) g) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.constr_eq Basis.constr_eqₓ'. -/
 theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)) : b.constr S g = f :=
   b.ext fun i => (b.constr_basis S g i).trans (h i)
 #align basis.constr_eq Basis.constr_eq
 
 /- warning: basis.constr_self -> Basis.constr_self is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) f
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) f
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.constr_self Basis.constr_selfₓ'. -/
 theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
   b.constr_eq S fun x => rfl
 #align basis.constr_self Basis.constr_self
 
 /- warning: basis.constr_range -> Basis.constr_range is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u1} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u2, u2, u3, u4, max u3 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u2, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u1} M' ι f))
-but is expected to have type
-  forall {ι : Type.{u5}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u5, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u5} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u3, u3, u2, u4, max u2 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (LinearMap.semilinearMapClass.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomSurjective.ids.{u3} R _inst_1) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u4), max (succ u5) (succ u4), max (succ u2) (succ u4)} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u5 u4} S (ι -> M') (AddMonoid.toZero.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u5 u4, max u2 u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u5, u3, u2, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u3, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u5} M' ι f))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.constr_range Basis.constr_rangeₓ'. -/
 theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span R (range f) := by
   rw [b.constr_def S f, LinearMap.range_comp, LinearMap.range_comp, LinearEquiv.range, ←
@@ -1072,10 +937,7 @@ theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span
 #align basis.constr_range Basis.constr_range
 
 /- warning: basis.constr_comp -> Basis.constr_comp is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u1, succ u4, succ u4} ι M' M' (coeFn.{succ u4, succ u4} (LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (fun (_x : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) => M' -> M') (LinearMap.hasCoeToFun.{u2, u2, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f) v)) (LinearMap.comp.{u2, u2, u2, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u5, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u4} R S M' (SMulZeroClass.toSMul.{u5, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u4} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u4} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u5, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (a : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M') => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M') => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (LinearMap.comp.{u5, u5, u5, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHomCompTriple.ids.{u5, u5} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.constr_comp Basis.constr_compₓ'. -/
 @[simp]
 theorem constr_comp (f : M' →ₗ[R] M') (v : ι → M') : b.constr S (f ∘ v) = f.comp (b.constr S v) :=
@@ -1099,10 +961,7 @@ protected def equiv : M ≃ₗ[R] M' :=
 -/
 
 /- warning: basis.equiv_apply -> Basis.equiv_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{succ u5} M' (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b' (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e i))
-but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u4, succ u1} ι ι'), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equiv.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι ι') e i))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.equiv_apply Basis.equiv_applyₓ'. -/
 @[simp]
 theorem equiv_apply : b.Equiv b' e (b i) = b' (e i) := by simp [Basis.equiv]
@@ -1127,10 +986,7 @@ theorem equiv_symm : (b.Equiv b' e).symm = b'.Equiv b e.symm :=
 #align basis.equiv_symm Basis.equiv_symm
 
 /- warning: basis.equiv_trans -> Basis.equiv_trans is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} {M'' : Type.{u6}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) [_inst_6 : AddCommMonoid.{u6} M''] [_inst_7 : Module.{u3, u6} R M'' _inst_1 _inst_6] {ι'' : Type.{u7}} (b'' : Basis.{u7, u3, u6} ι'' R M'' _inst_1 _inst_6 _inst_7) (e : Equiv.{succ u1, succ u2} ι ι') (e' : Equiv.{succ u2, succ u7} ι' ι''), Eq.{max (succ u4) (succ u6)} (LinearEquiv.{u3, u3, u4, u6} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M'' _inst_2 _inst_6 _inst_3 _inst_7) (LinearEquiv.trans.{u3, u3, u3, u4, u5, u6} R R R M M' M'' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_6 _inst_3 _inst_5 _inst_7 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.right_ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomCompTriple.right_ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (Basis.equiv.{u2, u7, u3, u5, u6} ι' ι'' R M' M'' _inst_1 _inst_4 _inst_5 _inst_6 _inst_7 b' b'' e')) (Basis.equiv.{u1, u7, u3, u4, u6} ι ι'' R M M'' _inst_1 _inst_2 _inst_3 _inst_6 _inst_7 b b'' (Equiv.trans.{succ u1, succ u2, succ u7} ι ι' ι'' e e'))
-but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u3}} {R : Type.{u6}} {M : Type.{u2}} {M' : Type.{u1}} {M'' : Type.{u5}} [_inst_1 : Semiring.{u6} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u6, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u1} M'] [_inst_5 : Module.{u6, u1} R M' _inst_1 _inst_4] (b : Basis.{u4, u6, u2} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u3, u6, u1} ι' R M' _inst_1 _inst_4 _inst_5) [_inst_6 : AddCommMonoid.{u5} M''] [_inst_7 : Module.{u6, u5} R M'' _inst_1 _inst_6] {ι'' : Type.{u7}} (b'' : Basis.{u7, u6, u5} ι'' R M'' _inst_1 _inst_6 _inst_7) (e : Equiv.{succ u4, succ u3} ι ι') (e' : Equiv.{succ u3, succ u7} ι' ι''), Eq.{max (succ u2) (succ u5)} (LinearEquiv.{u6, u6, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) M M'' _inst_2 _inst_6 _inst_3 _inst_7) (LinearEquiv.trans.{u6, u6, u6, u2, u1, u5} R R R M M' M'' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_6 _inst_3 _inst_5 _inst_7 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHomCompTriple.ids.{u6, u6} R R _inst_1 _inst_1 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1))) (RingHomCompTriple.ids.{u6, u6} R R _inst_1 _inst_1 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1))) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) (Basis.equiv.{u4, u3, u6, u2, u1} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (Basis.equiv.{u3, u7, u6, u1, u5} ι' ι'' R M' M'' _inst_1 _inst_4 _inst_5 _inst_6 _inst_7 b' b'' e')) (Basis.equiv.{u4, u7, u6, u2, u5} ι ι'' R M M'' _inst_1 _inst_2 _inst_3 _inst_6 _inst_7 b b'' (Equiv.trans.{succ u4, succ u3, succ u7} ι ι' ι'' e e'))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.equiv_trans Basis.equiv_transₓ'. -/
 @[simp]
 theorem equiv_trans {ι'' : Type _} (b'' : Basis ι'' R M'') (e : ι ≃ ι') (e' : ι' ≃ ι'') :
@@ -1172,10 +1028,7 @@ protected def prod : Basis (Sum ι ι') R (M × M') :=
 #align basis.prod Basis.prod
 
 /- warning: basis.prod_repr_inl -> Basis.prod_repr_inl is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u4, u5} M M') (i : ι), Eq.{succ u3} R (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => (Sum.{u1, u2} ι ι') -> R) (Finsupp.coeFun.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ (max u4 u5)) (succ (max (max u1 u2) u3)), max (succ (max u4 u5)) (succ (max (max u1 u2) u3))} (LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => (Prod.{u4, u5} M M') -> (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, max u4 u5, max (max u1 u2) u3} R R (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u1, u2} ι ι' i)) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u4, u5} M M' x)) i)
-but is expected to have type
-  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u5), succ u5, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u5} R M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u5} R M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u5} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, max u2 u3, max (max u2 u3) u5} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, max u2 u3, max (max u2 u3) u5} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u5, u4} M M' x)) i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.prod_repr_inl Basis.prod_repr_inlₓ'. -/
 @[simp]
 theorem prod_repr_inl (x) (i) : (b.Prod b').repr x (Sum.inl i) = b.repr x.1 i :=
@@ -1183,10 +1036,7 @@ theorem prod_repr_inl (x) (i) : (b.Prod b').repr x (Sum.inl i) = b.repr x.1 i :=
 #align basis.prod_repr_inl Basis.prod_repr_inl
 
 /- warning: basis.prod_repr_inr -> Basis.prod_repr_inr is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u4, u5} M M') (i : ι'), Eq.{succ u3} R (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => (Sum.{u1, u2} ι ι') -> R) (Finsupp.coeFun.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ (max u4 u5)) (succ (max (max u1 u2) u3)), max (succ (max u4 u5)) (succ (max (max u1 u2) u3))} (LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => (Prod.{u4, u5} M M') -> (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, max u4 u5, max (max u1 u2) u3} R R (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u1, u2} ι ι' i)) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.coeFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u5) (succ (max u2 u3)), max (succ u5) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M' -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u5, max u2 u3} R R M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u4, u5} M M' x)) i)
-but is expected to have type
-  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι'), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u4, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M') => Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u4} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u1 u3, max (max u1 u3) u4} R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u1 u3, max (max u1 u3) u4} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u1 u3} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u5, u4} M M' x)) i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.prod_repr_inr Basis.prod_repr_inrₓ'. -/
 @[simp]
 theorem prod_repr_inr (x) (i) : (b.Prod b').repr x (Sum.inr i) = b'.repr x.2 i :=
@@ -1194,10 +1044,7 @@ theorem prod_repr_inr (x) (i) : (b.Prod b').repr x (Sum.inr i) = b'.repr x.2 i :
 #align basis.prod_repr_inr Basis.prod_repr_inr
 
 /- warning: basis.prod_apply_inl_fst -> Basis.prod_apply_inl_fst is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u4} M (Prod.fst.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u1, u2} ι ι' i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b i)
-but is expected to have type
-  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u1, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u1, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u4} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M (Prod.fst.{u5, u4} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u5)) (succ u4), max (succ u3) (succ u2), max (succ u5) (succ u4)} (Basis.{max u2 u3, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u3, u2} ι ι') => Prod.{u5, u4} M M') _x) (Basis.funLike.{max u3 u2, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u3, u2} ι ι' i))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u5), succ u3, succ u5} (Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) b i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inl_fst Basis.prod_apply_inl_fstₓ'. -/
 theorem prod_apply_inl_fst (i) : (b.Prod b' (Sum.inl i)).1 = b i :=
   b.repr.Injective <| by
@@ -1209,10 +1056,7 @@ theorem prod_apply_inl_fst (i) : (b.Prod b' (Sum.inl i)).1 = b i :=
 #align basis.prod_apply_inl_fst Basis.prod_apply_inl_fst
 
 /- warning: basis.prod_apply_inr_fst -> Basis.prod_apply_inr_fst is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u4} M (Prod.fst.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u1, u2} ι ι' i))) (OfNat.ofNat.{u4} M 0 (OfNat.mk.{u4} M 0 (Zero.zero.{u4} M (AddZeroClass.toHasZero.{u4} M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u1, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u1, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u4} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M (Prod.fst.{u5, u4} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u5)) (succ u4), max (succ u3) (succ u2), max (succ u5) (succ u4)} (Basis.{max u2 u3, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u3, u2} ι ι') => Prod.{u5, u4} M M') _x) (Basis.funLike.{max u3 u2, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u3, u2} ι ι' i))) (OfNat.ofNat.{u5} M 0 (Zero.toOfNat0.{u5} M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inr_fst Basis.prod_apply_inr_fstₓ'. -/
 theorem prod_apply_inr_fst (i) : (b.Prod b' (Sum.inr i)).1 = 0 :=
   b.repr.Injective <| by
@@ -1225,10 +1069,7 @@ theorem prod_apply_inr_fst (i) : (b.Prod b' (Sum.inr i)).1 = 0 :=
 #align basis.prod_apply_inr_fst Basis.prod_apply_inr_fst
 
 /- warning: basis.prod_apply_inl_snd -> Basis.prod_apply_inl_snd is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u1, u2} ι ι' i))) (OfNat.ofNat.{u5} M' 0 (OfNat.mk.{u5} M' 0 (Zero.zero.{u5} M' (AddZeroClass.toHasZero.{u5} M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u1, u5} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u4)) (succ u5), max (succ u3) (succ u2), max (succ u4) (succ u5)} (Basis.{max u2 u3, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u3, u2} ι ι') => Prod.{u4, u5} M M') _x) (Basis.funLike.{max u3 u2, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u3, u2} ι ι' i))) (OfNat.ofNat.{u5} M' 0 (Zero.toOfNat0.{u5} M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inl_snd Basis.prod_apply_inl_sndₓ'. -/
 theorem prod_apply_inl_snd (i) : (b.Prod b' (Sum.inl i)).2 = 0 :=
   b'.repr.Injective <| by
@@ -1241,10 +1082,7 @@ theorem prod_apply_inl_snd (i) : (b.Prod b' (Sum.inl i)).2 = 0 :=
 #align basis.prod_apply_inl_snd Basis.prod_apply_inl_snd
 
 /- warning: basis.prod_apply_inr_snd -> Basis.prod_apply_inr_snd is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u1, u2} ι ι' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b' i)
-but is expected to have type
-  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u1, u5} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u4)) (succ u5), max (succ u3) (succ u2), max (succ u4) (succ u5)} (Basis.{max u2 u3, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u3, u2} ι ι') => Prod.{u4, u5} M M') _x) (Basis.funLike.{max u3 u2, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u3, u2} ι ι' i))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u5), succ u2, succ u5} (Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inr_snd Basis.prod_apply_inr_sndₓ'. -/
 theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
   b'.repr.Injective <| by
@@ -1256,10 +1094,7 @@ theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
 #align basis.prod_apply_inr_snd Basis.prod_apply_inr_snd
 
 /- warning: basis.prod_apply -> Basis.prod_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u1, u2} ι ι'), Eq.{max (succ u4) (succ u5)} (Prod.{u4, u5} M M') (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u1, u2, max (succ u4) (succ u5)} ι ι' (Prod.{u4, u5} M M') (Function.comp.{succ u1, succ u4, max (succ u4) (succ u5)} ι M (Prod.{u4, u5} M M') (coeFn.{max (succ u4) (succ (max u4 u5)), max (succ u4) (succ (max u4 u5))} (LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u4, max u4 u5} R R M (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inl.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b)) (Function.comp.{succ u2, succ u5, max (succ u4) (succ u5)} ι' M' (Prod.{u4, u5} M M') (coeFn.{max (succ u5) (succ (max u4 u5)), max (succ u5) (succ (max u4 u5))} (LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M' -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u5, max u4 u5} R R M' (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inr.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b')) i)
-but is expected to have type
-  forall {ι : Type.{u5}} {ι' : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u1, u2} R M' _inst_1 _inst_4] (b : Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u5, u4} ι ι'), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') i) (FunLike.coe.{max (max (max (max (succ u5) (succ u4)) (succ u1)) (succ u3)) (succ u2), max (succ u5) (succ u4), max (succ u3) (succ u2)} (Basis.{max u4 u5, u1, max u2 u3} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u5, u4} ι ι') (fun (_x : Sum.{u5, u4} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') _x) (Basis.funLike.{max u5 u4, u1, max u3 u2} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u5, u4, u1, u3, u2} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u5, u4, max (succ u3) (succ u2)} ι ι' (Prod.{u3, u2} M M') (Function.comp.{succ u5, succ u3, max (succ u3) (succ u2)} ι M (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u3, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (Prod.{u3, u2} M M') _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u3, max u3 u2} R R M (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inl.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u5) (succ u1)) (succ u3), succ u5, succ u3} (Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (Function.comp.{succ u4, succ u2, max (succ u3) (succ u2)} ι' M' (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u2, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M' (Prod.{u3, u2} M M') _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M') => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, max u3 u2} R R M' (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inr.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u2), succ u4, succ u2} (Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) b')) i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply Basis.prod_applyₓ'. -/
 @[simp]
 theorem prod_apply (i) :
@@ -1303,10 +1138,7 @@ protected theorem smul_eq_zero [NoZeroDivisors R] (b : Basis ι R M) {c : R} {x
 #align basis.smul_eq_zero Basis.smul_eq_zero
 
 /- warning: eq_bot_of_rank_eq_zero -> Basis.eq_bot_of_rank_eq_zero is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall (N : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3), (forall {m : Nat} (v : (Fin m) -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N)), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x N)))))) v) _inst_1 _inst_2 _inst_3) -> (Eq.{1} Nat m (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero))))) -> (Eq.{succ u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) N (Bot.bot.{u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.hasBot.{u2, u3} R M _inst_1 _inst_2 _inst_3))))
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u3} R (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))], (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) -> (forall (N : Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3), (forall {m : Nat} (v : (Fin m) -> (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u1} R M _inst_1 _inst_2 _inst_3)) x N))), (LinearIndependent.{0, u3, u1} (Fin m) R M (Function.comp.{1, succ u1, succ u1} (Fin m) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u1} R M _inst_1 _inst_2 _inst_3)) x N)) M (Subtype.val.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Set.{u1} M) (Set.instMembershipSet.{u1} M) x (SetLike.coe.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u1} R M _inst_1 _inst_2 _inst_3) N))) v) _inst_1 _inst_2 _inst_3) -> (Eq.{1} Nat m (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))) -> (Eq.{succ u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) N (Bot.bot.{u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (Submodule.instBotSubmodule.{u3, u1} R M _inst_1 _inst_2 _inst_3))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zeroₓ'. -/
 theorem Basis.eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N : Submodule R M)
     (rank_eq : ∀ {m : ℕ} (v : Fin m → N), LinearIndependent R (coe ∘ v : Fin m → M) → m = 0) :
@@ -1352,10 +1184,7 @@ theorem singleton_apply (ι R : Type _) [Unique ι] [Semiring R] (i) : Basis.sin
 #align basis.singleton_apply Basis.singleton_apply
 
 /- warning: basis.singleton_repr -> Basis.singleton_repr is a dubious translation:
-lean 3 declaration is
-  forall (ι : Type.{u1}) (R : Type.{u2}) [_inst_6 : Unique.{succ u1} ι] [_inst_7 : Semiring.{u2} R] (x : R) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u2, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7) R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) (fun (_x : LinearEquiv.{u2, u2, u2, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7) R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) => R -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u2, max u1 u2} R R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7)) (Basis.repr.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7) (Basis.singleton.{u1, u2} ι R _inst_6 _inst_7)) x) i) x
-but is expected to have type
-  forall (ι : Type.{u2}) (R : Type.{u1}) [_inst_6 : Unique.{succ u2} ι] [_inst_7 : Semiring.{u1} R] (x : R) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : R) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (SMulZeroClass.toSMul.{u1, u1} R R (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribSMul.toSMulZeroClass.{u1, u1} R R (AddMonoid.toAddZeroClass.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribMulAction.toDistribSMul.{u1, u1} R R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, max u2 u1, max u2 u1} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, max u2 u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7)))))) (Basis.repr.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7) (Basis.singleton.{u2, u1} ι R _inst_6 _inst_7)) x) i) x
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.singleton_repr Basis.singleton_reprₓ'. -/
 @[simp]
 theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
@@ -1363,10 +1192,7 @@ theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
 #align basis.singleton_repr Basis.singleton_repr
 
 /- warning: basis.basis_singleton_iff -> Basis.basis_singleton_iff is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_6 : Ring.{u1} R] [_inst_7 : Nontrivial.{u1} R] [_inst_8 : AddCommGroup.{u2} M] [_inst_9 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)] [_inst_10 : NoZeroSMulDivisors.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_6))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_8))))) (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_6))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_6)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9))))] (ι : Type.{u3}) [_inst_11 : Unique.{succ u3} ι], Iff (Nonempty.{max (succ u3) (succ u1) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9)) (Exists.{succ u2} M (fun (x : M) => Exists.{0} (Ne.{succ u2} M x (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_8))))))))) (fun (H : Ne.{succ u2} M x (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_8))))))))) => forall (y : M), Exists.{succ u1} R (fun (r : R) => Eq.{succ u2} M (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_6))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_6)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9)))) r x) y))))
-but is expected to have type
-  forall {R : Type.{u3}} {M : Type.{u2}} [_inst_6 : Ring.{u3} R] [_inst_7 : Nontrivial.{u3} R] [_inst_8 : AddCommGroup.{u2} M] [_inst_9 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)] [_inst_10 : NoZeroSMulDivisors.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9))))] (ι : Type.{u1}) [_inst_11 : Unique.{succ u1} ι], Iff (Nonempty.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9)) (Exists.{succ u2} M (fun (x : M) => Exists.{0} (Ne.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8)))))))) (fun (H : Ne.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8)))))))) => forall (y : M), Exists.{succ u3} R (fun (r : R) => Eq.{succ u2} M (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9))))) r x) y))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.basis_singleton_iff Basis.basis_singleton_iffₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (x «expr ≠ » 0) -/
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
@@ -1467,10 +1293,7 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
 #align module.card_fintype Module.card_fintype
 
 /- warning: basis.equiv_fun_symm_apply -> Basis.equivFun_symm_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (x i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)))
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_symm_apply Basis.equivFun_symm_applyₓ'. -/
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
@@ -1480,10 +1303,7 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
 #align basis.equiv_fun_symm_apply Basis.equivFun_symm_apply
 
 /- warning: basis.equiv_fun_apply -> Basis.equivFun_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
@@ -1491,10 +1311,7 @@ theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
 #align basis.equiv_fun_apply Basis.equivFun_apply
 
 /- warning: basis.map_equiv_fun -> Basis.map_equivFun is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u4, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.equivFun.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u2, u2, u2, u4, u3, max u1 u2} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.symm.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) f) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.map_equiv_fun Basis.map_equivFunₓ'. -/
 @[simp]
 theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
@@ -1502,10 +1319,7 @@ theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.tr
 #align basis.map_equiv_fun Basis.map_equivFun
 
 /- warning: basis.sum_equiv_fun -> Basis.sum_equivFun is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.sum_equiv_fun Basis.sum_equivFunₓ'. -/
 theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
   by
@@ -1514,20 +1328,14 @@ theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
 #align basis.sum_equiv_fun Basis.sum_equivFun
 
 /- warning: basis.sum_repr -> Basis.sum_repr is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.sum_repr Basis.sum_reprₓ'. -/
 theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
   b.sum_equivFun u
 #align basis.sum_repr Basis.sum_repr
 
 /- warning: basis.equiv_fun_self -> Basis.equivFun_self is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u1} ι] (i : ι) (j : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_self Basis.equivFun_selfₓ'. -/
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
@@ -1535,10 +1343,7 @@ theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
 #align basis.equiv_fun_self Basis.equivFun_self
 
 /- warning: basis.repr_sum_self -> Basis.repr_sum_self is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))))) c
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u3) (succ u2)} (forall (ᾰ : ι), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) ᾰ) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u1, u3} M ι _inst_2 (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))))) c
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_sum_self Basis.repr_sum_selfₓ'. -/
 theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) = c :=
   by
@@ -1562,10 +1367,7 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 -/
 
 /- warning: basis.of_equiv_fun_repr_apply -> Basis.ofEquivFun_repr_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
@@ -1574,10 +1376,7 @@ theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι)
 #align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_apply
 
 /- warning: basis.coe_of_equiv_fun -> Basis.coe_ofEquivFun is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u1, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u1 u2} (ι -> R) 0 (OfNat.mk.{max u1 u2} (ι -> R) 0 (Zero.zero.{max u1 u2} (ι -> R) (Pi.instZero.{u1, u2} ι (fun (a : ι) => R) (fun (i : ι) => MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_equiv_fun Basis.coe_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
@@ -1621,10 +1420,7 @@ variable (S : Type _) [Semiring S] [Module S M']
 variable [SMulCommClass R S M']
 
 /- warning: basis.constr_apply_fintype -> Basis.constr_apply_fintype is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_7 : Semiring.{u5} S] [_inst_8 : Module.{u5, u4} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_7)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_7) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u4, u1} M' ι _inst_4 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
@@ -1633,10 +1429,7 @@ theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
 #align basis.constr_apply_fintype Basis.constr_apply_fintype
 
 /- warning: basis.mem_submodule_iff' -> Basis.mem_submodule_iff' is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u2)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u3} M x (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P)) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P))) b i))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u2} M x (Finset.sum.{u2, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) (c i) (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _x) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff' Basis.mem_submodule_iff'ₓ'. -/
 /-- If the submodule `P` has a finite basis,
 `x ∈ P` iff it is a linear combination of basis vectors. -/
@@ -1648,10 +1441,7 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
 #align basis.mem_submodule_iff' Basis.mem_submodule_iff'
 
 /- warning: basis.coord_equiv_fun_symm -> Basis.coord_equivFun_symm is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
-but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
@@ -1698,10 +1488,7 @@ def equiv' (f : M → M') (g : M' → M) (hf : ∀ i, f (b i) ∈ range b') (hg
 -/
 
 /- warning: basis.equiv'_apply -> Basis.equiv'_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.Mem.{u5, u5} M' (Set.{u5} M') (Set.hasMem.{u5} M') (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (Set.range.{u5, succ u2} M' ι' (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b'))) (hg : forall (i : ι'), Membership.Mem.{u4, u4} M (Set.{u4} M) (Set.hasMem.{u4} M) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b))) (hgf : forall (i : ι), Eq.{succ u4} M (g (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (i : ι), Eq.{succ u5} M' (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u3, u3, u4, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u4, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u3, u3, u4, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1)) (Basis.equiv'.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))
-but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.equiv'_apply Basis.equiv'_applyₓ'. -/
 @[simp]
 theorem equiv'_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι) :
@@ -1710,10 +1497,7 @@ theorem equiv'_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι) :
 #align basis.equiv'_apply Basis.equiv'_apply
 
 /- warning: basis.equiv'_symm_apply -> Basis.equiv'_symm_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.Mem.{u5, u5} M' (Set.{u5} M') (Set.hasMem.{u5} M') (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (Set.range.{u5, succ u2} M' ι' (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b'))) (hg : forall (i : ι'), Membership.Mem.{u4, u4} M (Set.{u4} M) (Set.hasMem.{u4} M) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b))) (hgf : forall (i : ι), Eq.{succ u4} M (g (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (i : ι'), Eq.{succ u4} M (coeFn.{max (succ u5) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u3, u3, u5, u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) (fun (_x : LinearEquiv.{u3, u3, u5, u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) => M' -> M) (LinearEquiv.hasCoeToFun.{u3, u3, u5, u4} R R M' M (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1)) (LinearEquiv.symm.{u3, u3, u4, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))
-but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι'), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M') => M) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (a : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') a) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (FunLike.coe.{max (succ u2) (succ u5), succ u5, succ u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M') => M) _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, u2, max u2 u5} R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, u2, max u2 u5} R R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, u2} R R M' M (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (LinearEquiv.symm.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.equiv'_symm_apply Basis.equiv'_symm_applyₓ'. -/
 @[simp]
 theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι') :
@@ -1722,10 +1506,7 @@ theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι'
 #align basis.equiv'_symm_apply Basis.equiv'_symm_apply
 
 /- warning: basis.sum_repr_mul_repr -> Basis.sum_repr_mul_repr is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : CommSemiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2] (b : Basis.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u2} R (Finset.sum.{u2, u4} R ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) (coeFn.{max (succ u4) (succ u2) (succ u3), max (succ u4) (succ u3)} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u4) (succ u2) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3)) b' j)) i) (coeFn.{max (succ u4) (succ u2), max (succ u4) (succ u2)} (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι' -> R) (Finsupp.coeFun.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u4 u2)), max (succ u3) (succ (max u4 u2))} (LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u4 u2} R R M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b') x) j))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) x) i)
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] (b : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Finset.sum.{u3, u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u3, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) j) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (instHMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonUnitalNonAssocSemiring.toMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1))))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u4, succ u2} (Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b' j)) i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u4, max (max u3 u2) u4} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u4, max (max u3 u2) u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b') x) j))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) x) i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.sum_repr_mul_repr Basis.sum_repr_mul_reprₓ'. -/
 theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i : ι) :
     (∑ j : ι', b.repr (b' j) i * b'.repr x j) = b.repr x i :=
@@ -1816,10 +1597,7 @@ protected noncomputable def mk : Basis ι R M :=
 #align basis.mk Basis.mk
 
 /- warning: basis.mk_repr -> Basis.mk_repr is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
@@ -1862,10 +1640,7 @@ theorem mk_coord_apply_eq (i : ι) : (Basis.mk hli hsp).Coord i (v i) = 1 :=
 #align basis.mk_coord_apply_eq Basis.mk_coord_apply_eq
 
 /- warning: basis.mk_coord_apply_ne -> Basis.mk_coord_apply_ne is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} {i : ι} {j : ι}, (Ne.{succ u1} ι j i) -> (Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} {i : ι} {j : ι}, (Ne.{succ u3} ι j i) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) _inst_1))))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_ne Basis.mk_coord_apply_neₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 0 on the `j`th element of the
 basis if `j ≠ i`. -/
@@ -1875,10 +1650,7 @@ theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i
 #align basis.mk_coord_apply_ne Basis.mk_coord_apply_ne
 
 /- warning: basis.mk_coord_apply -> Basis.mk_coord_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} [_inst_10 : DecidableEq.{succ u1} ι] {i : ι} {j : ι}, Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} R (Eq.{succ u1} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
-but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) _inst_1))))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply Basis.mk_coord_applyₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to the Kronecker delta on the
 `j`th element of the basis. -/
@@ -1933,10 +1705,7 @@ protected theorem span_apply (i : ι) : (Basis.span hli i : M) = v i :=
 end Span
 
 /- warning: basis.group_smul_span_eq_top -> Basis.groupSmul_span_eq_top is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15588 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15574 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
@@ -1953,10 +1722,7 @@ theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Dis
 #align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_top
 
 /- warning: basis.group_smul -> Basis.groupSmul is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> G) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (Ring.toAddGroupWithOne.{u2} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toSMul.{u4, u2} G R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (Ring.toAddGroupWithOne.{u2} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (Ring.toAddGroupWithOne.{u2} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u3} G M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toSMul.{u4, u3} G M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> G) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.group_smul Basis.groupSmulₓ'. -/
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` are elements of a group,
 `group_smul` provides the basis corresponding to `w • v`. -/
@@ -1967,10 +1733,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 #align basis.group_smul Basis.groupSmul
 
 /- warning: basis.group_smul_apply -> Basis.groupSmul_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16008 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
@@ -2013,10 +1776,7 @@ theorem unitsSMul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_s
 #align basis.units_smul_apply Basis.unitsSMul_apply
 
 /- warning: basis.coord_units_smul -> Basis.coord_unitsSMul is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (i : ι), Eq.{max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSMul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (SMul.smul.{u2, max u3 u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.hasSmul.{u2, u2, u2, u3, u2} R₂ R₂ (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (DivInvMonoid.toMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Group.toDivInvMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.group.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.distribMulAction.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toAddCommGroup.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.smulCommClass_right.{u2, u2, u2} R₂ R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (SMulZeroClass.toHasSmul.{u2, u2} R₂ R₂ (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (SMulWithZero.toSmulZeroClass.{u2, u2} R₂ R₂ (MulZeroClass.toHasZero.{u2} R₂ (MulZeroOneClass.toMulZeroClass.{u2} R₂ (MonoidWithZero.toMulZeroOneClass.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (MulActionWithZero.toSMulWithZero.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Module.toMulActionWithZero.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (Monoid.toMulAction.{u2} R₂ (CommMonoid.toMonoid.{u2} R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2)))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e i))
-but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coord_units_smul Basis.coord_unitsSMulₓ'. -/
 @[simp]
 theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
@@ -2035,10 +1795,7 @@ theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
 #align basis.coord_units_smul Basis.coord_unitsSMul
 
 /- warning: basis.repr_units_smul -> Basis.repr_unitsSMul is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (v : M) (i : ι), Eq.{succ u2} R₂ (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSMul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (SMul.smul.{u2, u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) R₂ (Units.hasSmul.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e) v) i))
-but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.repr_units_smul Basis.repr_unitsSMulₓ'. -/
 @[simp]
 theorem repr_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
@@ -2071,10 +1828,7 @@ theorem isUnitSMul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (
 section Fin
 
 /- warning: basis.mk_fin_cons -> Basis.mkFinCons is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) -> (forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N)) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)
-but is expected to have type
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Basis.{0, u1, u2} (Fin n) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (forall (c : R) (x : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3)))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))))) -> (forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y)) N)) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.mk_fin_cons Basis.mkFinConsₓ'. -/
 /-- Let `b` be a basis for a submodule `N` of `M`. If `y : M` is linear independent of `N`
 and `y` and `N` together span the whole of `M`, then there is a basis for `M`
@@ -2096,10 +1850,7 @@ noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fi
 #align basis.mk_fin_cons Basis.mkFinCons
 
 /- warning: basis.coe_mk_fin_cons -> Basis.coe_mkFinCons is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N)), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> M) (Basis.mkFinCons.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> M) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => M) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Basis.mkFinCons.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => M) y (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (coeSubtype.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)))))) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
-but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N)), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.mkFinCons.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) y (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) M (Subtype.val.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Set.{u1} M) (Set.instMembershipSet.{u1} M) x (SetLike.coe.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) N))) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons Basis.coe_mkFinConsₓ'. -/
 @[simp]
 theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R N)
@@ -2109,10 +1860,7 @@ theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R
 #align basis.coe_mk_fin_cons Basis.coe_mkFinCons
 
 /- warning: basis.mk_fin_cons_of_le -> Basis.mkFinConsOfLe is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) -> (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toHasLe.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) -> (forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) -> (forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))
-but is expected to have type
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) -> (Basis.{0, u1, u2} (Fin n) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) N O) -> (forall (c : R) (x : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3)))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))))) -> (forall (z : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y)) N))) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.mk_fin_cons_of_le Basis.mkFinConsOfLeₓ'. -/
 /-- Let `b` be a basis for a submodule `N ≤ O`. If `y ∈ O` is linear independent of `N`
 and `y` and `N` together span the whole of `O`, then there is a basis for `O`
@@ -2125,10 +1873,7 @@ noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y
 #align basis.mk_fin_cons_of_le Basis.mkFinConsOfLe
 
 /- warning: basis.coe_mk_fin_cons_of_le -> Basis.coe_mkFinConsOfLe is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (yO : Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hNO : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toHasLe.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (Submodule.ofLe.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N O hNO)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
-but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLeₓ'. -/
 @[simp]
 theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
@@ -2173,10 +1918,7 @@ theorem finTwoProd_one (R : Type _) [Semiring R] : Basis.finTwoProd R 1 = (0, 1)
 #align basis.fin_two_prod_one Basis.finTwoProd_one
 
 /- warning: basis.coe_fin_two_prod_repr -> Basis.coe_finTwoProd_repr is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} ((Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> R) (coeFn.{succ u1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (fun (_x : Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> R) (Finsupp.coeFun.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (coeFn.{succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) => (Prod.{u1, u1} R R) -> (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) _inst_10 _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero))) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
-but is expected to have type
-  forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} (forall (ᾰ : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) ᾰ) (FunLike.coe.{succ u1, 1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) _x) (Finsupp.funLike.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (Prod.{u1, u1} R R) (fun (_x : Prod.{u1, u1} R R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Prod.{u1, u1} R R) => Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _x) (SMulHomClass.toFunLike.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (SMulZeroClass.toSMul.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toZero.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toAddZeroClass.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Prod.{u1, u1} R R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))))) (SMulZeroClass.toSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toZero.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toAddZeroClass.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)))))) (DistribMulActionHomClass.toSMulHomClass.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, u1, u1} R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)))))) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coe_fin_two_prod_repr Basis.coe_finTwoProd_reprₓ'. -/
 @[simp]
 theorem coe_finTwoProd_repr {R : Type _} [Semiring R] (x : R × R) :
@@ -2197,10 +1939,7 @@ variable [Ring R] [IsDomain R]
 variable [AddCommGroup M] [Module R M] {b : ι → M}
 
 /- warning: submodule.induction_on_rank_aux -> Submodule.inductionOnRankAux is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_2 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_1)] [_inst_3 : AddCommGroup.{u3} M] [_inst_4 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (forall (P : (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> Sort.{u4}), (forall (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall (N' : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)))) N' N) -> (forall (x : M), (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N) -> (forall (c : R) (y : M), (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) y N') -> (Eq.{succ u3} M (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))))) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)))) c x) y) (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))) -> (P N'))) -> (P N)) -> (forall (n : Nat) (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall {m : Nat} (v : (Fin m) -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N)), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N)))))) v) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (LE.le.{0} Nat Nat.hasLe m n)) -> (P N)))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_2 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_1)] [_inst_3 : AddCommGroup.{u3} M] [_inst_4 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (forall (P : (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> Sort.{u4}), (forall (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall (N' : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Submodule.completeLattice.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4))))) N' N) -> (forall (x : M), (Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N) -> (forall (c : R) (y : M), (Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) y N') -> (Eq.{succ u3} M (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))))) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4))))) c x) y) (OfNat.ofNat.{u3} M 0 (Zero.toOfNat0.{u3} M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) -> (P N'))) -> (P N)) -> (forall (n : Nat) (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall {m : Nat} (v : (Fin m) -> (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N))), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N)) M (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (SetLike.coe.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) N))) v) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (LE.le.{0} Nat instLENat m n)) -> (P N)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align submodule.induction_on_rank_aux Submodule.inductionOnRankAuxₓ'. -/
 /-- If `N` is a submodule with finite rank, do induction on adjoining a linear independent
 element to a submodule. -/
@@ -2260,10 +1999,7 @@ noncomputable def extend (hs : LinearIndependent K (coe : s → V)) : Basis _ K
 -/
 
 /- warning: basis.extend_apply_self -> Basis.extend_apply_self is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))), Eq.{succ u1} V (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s hs) x) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))))))) x)
-but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs) x) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) x)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.extend_apply_self Basis.extend_apply_selfₓ'. -/
 theorem extend_apply_self (hs : LinearIndependent K (coe : s → V)) (x : hs.extend _) :
     Basis.extend hs x = x :=
@@ -2271,10 +2007,7 @@ theorem extend_apply_self (hs : LinearIndependent K (coe : s → V)) (x : hs.ext
 #align basis.extend_apply_self Basis.extend_apply_self
 
 /- warning: basis.coe_extend -> Basis.coe_extend is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Eq.{succ u1} ((coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s hs)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))))))))
-but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Eq.{succ u2} (forall (a : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs)) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.coe_extend Basis.coe_extendₓ'. -/
 @[simp]
 theorem coe_extend (hs : LinearIndependent K (coe : s → V)) : ⇑(Basis.extend hs) = coe :=
@@ -2282,10 +2015,7 @@ theorem coe_extend (hs : LinearIndependent K (coe : s → V)) : ⇑(Basis.extend
 #align basis.coe_extend Basis.coe_extend
 
 /- warning: basis.range_extend -> Basis.range_extend is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Eq.{succ u1} (Set.{u1} V) (Set.range.{u1, succ u1} V (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s hs))) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))
-but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Eq.{succ u2} (Set.{u2} V) (Set.range.{u2, succ u2} V (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs))) (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.range_extend Basis.range_extendₓ'. -/
 theorem range_extend (hs : LinearIndependent K (coe : s → V)) :
     range (Basis.extend hs) = hs.extend (subset_univ _) := by
@@ -2487,10 +2217,7 @@ end AtomsOfSubmoduleLattice
 variable {K V}
 
 /- warning: linear_map.exists_left_inverse_of_injective -> LinearMap.exists_leftInverse_of_injective is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} {V' : Type.{u3}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_3 : AddCommGroup.{u3} V'] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_5 : Module.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3)] (f : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (LinearMap.ker.{u2, u2, u1, u3, max u1 u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u1, u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f) (Bot.bot.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasBot.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) => Eq.{succ u1} (LinearMap.{u2, u2, u1, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 _inst_4) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} K K K V V' V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 _inst_5 _inst_4 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomCompTriple.right_ids.{u2, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) g f) (LinearMap.id.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))
-but is expected to have type
-  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (LinearMap.ker.{u2, u2, u3, u1, max u3 u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u3, u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) f) (Bot.bot.{u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (Submodule.instBotSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) => Eq.{succ u3} (LinearMap.{u2, u2, u3, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 _inst_4) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} K K K V V' V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 _inst_5 _inst_4 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) g f) (LinearMap.id.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align linear_map.exists_left_inverse_of_injective LinearMap.exists_leftInverse_of_injectiveₓ'. -/
 theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj : f.ker = ⊥) :
     ∃ g : V' →ₗ[K] V, g.comp f = LinearMap.id :=
@@ -2536,10 +2263,7 @@ instance Module.Submodule.complementedLattice : ComplementedLattice (Submodule K
 -/
 
 /- warning: linear_map.exists_right_inverse_of_surjective -> LinearMap.exists_rightInverse_of_surjective is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} {V' : Type.{u3}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_3 : AddCommGroup.{u3} V'] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_5 : Module.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3)] (f : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u3} (Submodule.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5) (LinearMap.range.{u2, u2, u1, u3, max u1 u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u1, u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) (RingHomSurjective.ids.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) f) (Top.top.{u3} (Submodule.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5) (Submodule.hasTop.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) => Eq.{succ u3} (LinearMap.{u2, u2, u3, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V' (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5 _inst_5) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} K K K V' V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5 _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomCompTriple.right_ids.{u2, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f g) (LinearMap.id.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5)))
-but is expected to have type
-  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u1} (Submodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5) (LinearMap.range.{u2, u2, u3, u1, max u3 u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u3, u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) (RingHomSurjective.ids.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))) f) (Top.top.{u1} (Submodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5) (Submodule.instTopSubmodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) => Eq.{succ u1} (LinearMap.{u2, u2, u1, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V' (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5 _inst_5) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} K K K V' V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5 _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) f g) (LinearMap.id.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align linear_map.exists_right_inverse_of_surjective LinearMap.exists_rightInverse_of_surjectiveₓ'. -/
 theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_surj : f.range = ⊤) :
     ∃ g : V' →ₗ[K] V, f.comp g = LinearMap.id :=
@@ -2554,10 +2278,7 @@ theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_sur
 #align linear_map.exists_right_inverse_of_surjective LinearMap.exists_rightInverse_of_surjective
 
 /- warning: linear_map.exists_extend -> LinearMap.exists_extend is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} {V' : Type.{u3}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_3 : AddCommGroup.{u3} V'] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_5 : Module.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3)] {p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4} (f : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) V' (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) _inst_5), Exists.{max (succ u1) (succ u3)} (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) (fun (g : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) => Eq.{max (succ u1) (succ u3)} (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) V' (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) _inst_5) (LinearMap.comp.{u2, u2, u2, u1, u1, u3} K K K (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomCompTriple.right_ids.{u2, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) g (Submodule.subtype.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p)) f)
-but is expected to have type
-  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] {p : Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4} (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V' (Submodule.addCommMonoid.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_5), Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (fun (g : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) => Eq.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V' (Submodule.addCommMonoid.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_5) (LinearMap.comp.{u2, u2, u2, u3, u3, u1} K K K (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (Submodule.addCommMonoid.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) g (Submodule.subtype.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p)) f)
+<too large>
 Case conversion may be inaccurate. Consider using '#align linear_map.exists_extend LinearMap.exists_extendₓ'. -/
 /-- Any linear map `f : p →ₗ[K] V'` defined on a subspace `p` can be extended to the whole
 space. -/
@@ -2570,10 +2291,7 @@ theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
 open Submodule LinearMap
 
 /- warning: submodule.exists_le_ker_of_lt_top -> Submodule.exists_le_ker_of_lt_top is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), (LT.lt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (Top.top.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasTop.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) -> (Exists.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (fun (f : LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) => Exists.{0} (Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) (fun (H : Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) => LE.le.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toHasLe.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (LinearMap.ker.{u2, u2, u1, u2, max u1 u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.semilinearMapClass.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f))))
-but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), (LT.lt.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLT.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (Top.top.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.instTopSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) -> (Exists.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (fun (f : LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) => And (Ne.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) f (OfNat.ofNat.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) 0 (Zero.toOfNat0.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instZeroLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))))))) (LE.le.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (LinearMap.ker.{u1, u1, u2, u1, max u2 u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.semilinearMapClass.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))))) f))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_topₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
@@ -2594,10 +2312,7 @@ theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
 #align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_top
 
 /- warning: quotient_prod_linear_equiv -> quotient_prod_linearEquiv is a dubious translation:
-lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Nonempty.{succ u1} (LinearEquiv.{u2, u2, u1, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomInvPair.ids.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHomInvPair.ids.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (Prod.{u1, u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p)) V (Prod.addCommMonoid.{u1, u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) (AddCommGroup.toAddCommMonoid.{u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4 p)) (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (Prod.module.{u2, u1, u1} K (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4 p)) (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (Submodule.Quotient.module.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4 p) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p)) _inst_4)
-but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Nonempty.{succ u2} (LinearEquiv.{u1, u1, u2, u2} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (RingHomInvPair.ids.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHomInvPair.ids.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (Prod.{u2, u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.setLike.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p))) V (Prod.instAddCommMonoidSum.{u2, u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.setLike.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p)) (AddCommGroup.toAddCommMonoid.{u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p)) (Submodule.addCommMonoid.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (Prod.module.{u1, u2, u2} K (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.setLike.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p)) (Submodule.addCommMonoid.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p) (Submodule.Quotient.module.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p) (Submodule.module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p)) _inst_4)
+<too large>
 Case conversion may be inaccurate. Consider using '#align quotient_prod_linear_equiv quotient_prod_linearEquivₓ'. -/
 theorem quotient_prod_linearEquiv (p : Submodule K V) : Nonempty (((V ⧸ p) × p) ≃ₗ[K] V) :=
   let ⟨q, hq⟩ := p.exists_isCompl
@@ -2621,10 +2336,7 @@ variable (R)
 open Submodule
 
 /- warning: basis.restrict_scalars -> Basis.restrictScalars is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6), Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))
-but is expected to have type
-  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (Algebra.toSMul.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u4, u3} S M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u4, u3} S M (MonoidWithZero.toZero.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toZero.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Algebra.toSMul.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6), Basis.{u1, u2, u3} ι R (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b)))) (Submodule.module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars Basis.restrictScalarsₓ'. -/
 /-- Let `b` be a `S`-basis of `M`. Let `R` be a comm_ring such that `algebra R S` with no zero
 smul divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
@@ -2633,10 +2345,7 @@ noncomputable def Basis.restrictScalars : Basis ι R (span R (Set.range b)) :=
 #align basis.restrict_scalars Basis.restrictScalars
 
 /- warning: basis.restrict_scalars_apply -> Basis.restrictScalars_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (i : ι), Eq.{succ u3} M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))) (Basis.restrictScalars.{u1, u2, u3, u4} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b) i)) (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b i)
-but is expected to have type
-  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (i : ι), Eq.{succ u4} M (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) _x) (Basis.funLike.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b) i)) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars_apply Basis.restrictScalars_applyₓ'. -/
 @[simp]
 theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i := by
@@ -2644,10 +2353,7 @@ theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i
 #align basis.restrict_scalars_apply Basis.restrictScalars_apply
 
 /- warning: basis.restrict_scalars_repr_apply -> Basis.restrictScalars_repr_apply is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (m : coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (i : ι), Eq.{succ u4} S (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (fun (_x : RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) => R -> S) (RingHom.hasCoeToFun.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (algebraMap.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Basis.repr.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Basis.restrictScalars.{u1, u2, u3, u4} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (coeFn.{max (succ u1) (succ u4), max (succ u1) (succ u4)} (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (fun (_x : Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) => ι -> S) (Finsupp.coeFun.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (coeFn.{max (succ u3) (succ (max u1 u4)), max (succ u3) (succ (max u1 u4))} (LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (fun (_x : LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) => M -> (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (LinearEquiv.hasCoeToFun.{u4, u4, u3, max u1 u4} S S M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Basis.repr.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6 b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))))) m)) i)
-but is expected to have type
-  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (a : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) a) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (a : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) a) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (_x : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) m)) i)
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_applyₓ'. -/
 @[simp]
 theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
@@ -2665,10 +2371,7 @@ theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
 #align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_apply
 
 /- warning: basis.mem_span_iff_repr_mem -> Basis.mem_span_iff_repr_mem is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (m : M), Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) m (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (forall (i : ι), Membership.Mem.{u4, u4} S (Set.{u4} S) (Set.hasMem.{u4} S) (coeFn.{max (succ u1) (succ u4), max (succ u1) (succ u4)} (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (fun (_x : Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) => ι -> S) (Finsupp.coeFun.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (coeFn.{max (succ u3) (succ (max u1 u4)), max (succ u3) (succ (max u1 u4))} (LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (fun (_x : LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) => M -> (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (LinearEquiv.hasCoeToFun.{u4, u4, u3, max u1 u4} S S M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Basis.repr.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6 b) m) i) (Set.range.{u4, succ u2} S R (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (fun (_x : RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) => R -> S) (RingHom.hasCoeToFun.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (algebraMap.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))
-but is expected to have type
-  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : M), Iff (Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) m (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (forall (i : ι), Membership.mem.{u1, u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) i) (Set.{u1} S) (Set.instMembershipSet.{u1} S) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) m) i) (Set.range.{u1, succ u3} S R (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align basis.mem_span_iff_repr_mem Basis.mem_span_iff_repr_memₓ'. -/
 /-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
 coordinates of `m` on the basis `b` are in `R` (see `basis.mem_span` for the case `R = S`). -/
Diff
@@ -1636,7 +1636,7 @@ theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u2)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u3} M x (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P)) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P))) b i))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u2} M x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (Finset.sum.{u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) ι (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u2, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (instHSMul.{u3, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (Submodule.smul.{u3, u3, u2} R R M _inst_1 _inst_2 _inst_3 P (SMulZeroClass.toSMul.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulZeroClass.toSMulWithZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (IsScalarTower.left.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) a) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u2} M x (Finset.sum.{u2, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) (c i) (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _x) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff' Basis.mem_submodule_iff'ₓ'. -/
 /-- If the submodule `P` has a finite basis,
 `x ∈ P` iff it is a linear combination of basis vectors. -/
@@ -1936,7 +1936,7 @@ end Span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15585 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15571 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15588 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15574 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
@@ -1970,7 +1970,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16005 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16008 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
@@ -1982,7 +1982,7 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16111 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16097 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16114 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16100 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
Diff
@@ -155,7 +155,7 @@ instance funLike : FunLike (Basis ι R M) ι fun _ => M
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofRepr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (e : LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))), Eq.{max (succ u1) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofRepr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u1) (succ u3), succ u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (_x : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u1 u3, u2, max (max u1 u3) u2} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u1 u3, u2, max (max u1 u3) u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u1 u3, u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) e) (Finsupp.single.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) i (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1)))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (e : LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))), Eq.{max (succ u1) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofRepr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u1) (succ u3), succ u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (_x : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u1 u3, u2, max (max u1 u3) u2} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u1 u3, u2, max (max u1 u3) u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u1 u3, u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) e) (Finsupp.single.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) i (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_repr Basis.coe_ofReprₓ'. -/
 @[simp]
 theorem coe_ofRepr (e : M ≃ₗ[R] ι →₀ R) : ⇑(ofRepr e) = fun i => e.symm (Finsupp.single i 1) :=
@@ -176,7 +176,7 @@ protected theorem injective [Nontrivial R] : Injective b :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single_one Basis.repr_symm_single_oneₓ'. -/
 theorem repr_symm_single_one : b.repr.symm (Finsupp.single i 1) = b i :=
   rfl
@@ -186,7 +186,7 @@ theorem repr_symm_single_one : b.repr.symm (Finsupp.single i 1) = b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i c)) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) c (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) c (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single Basis.repr_symm_singleₓ'. -/
 theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
   calc
@@ -200,7 +200,7 @@ theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_self Basis.repr_selfₓ'. -/
 @[simp]
 theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
@@ -211,7 +211,7 @@ theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u1} ι i j)], Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) _inst_6 (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u3} ι i j)], Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) j) (ite.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Eq.{succ u3} ι i j) _inst_6 (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u3} ι i j)], Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) j) (ite.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Eq.{succ u3} ι i j) _inst_6 (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_self_apply Basis.repr_self_applyₓ'. -/
 theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then 1 else 0 := by
   rw [repr_self, Finsupp.single_apply]
@@ -221,7 +221,7 @@ theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) v) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_apply Basis.repr_symm_applyₓ'. -/
 @[simp]
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
@@ -248,7 +248,7 @@ theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)) v
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
 Case conversion may be inaccurate. Consider using '#align basis.repr_total Basis.repr_totalₓ'. -/
 @[simp]
 theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
@@ -261,7 +261,7 @@ theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
 Case conversion may be inaccurate. Consider using '#align basis.total_repr Basis.total_reprₓ'. -/
 @[simp]
 theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
@@ -284,7 +284,7 @@ theorem repr_range : (b.repr : M →ₗ[R] ι →₀ R).range = Finsupp.supporte
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_span_repr_support Basis.mem_span_repr_supportₓ'. -/
 theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
     m ∈ span R (b '' (b.repr m).support) :=
@@ -295,7 +295,7 @@ theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.hasSubset.{u3} ι) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.instHasSubsetSet.{u3} ι) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.instHasSubsetSet.{u3} ι) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
 Case conversion may be inaccurate. Consider using '#align basis.repr_support_subset_of_mem_span Basis.repr_support_subset_of_mem_spanₓ'. -/
 theorem repr_support_subset_of_mem_span {ι : Type _} (b : Basis ι R M) (s : Set ι) {m : M}
     (hm : m ∈ span R (b '' s)) : ↑(b.repr m).support ⊆ s :=
@@ -325,7 +325,7 @@ def coord : M →ₗ[R] R :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) (Eq.{succ u3} M x (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) x) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) x) 0 (Zero.toOfNat0.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) x) (MonoidWithZero.toZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) x) (Semiring.toMonoidWithZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) x) _inst_1))))) (Eq.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) x) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) x) 0 (Zero.toOfNat0.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) x) (MonoidWithZero.toZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) x) (Semiring.toMonoidWithZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) x) _inst_1))))) (Eq.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)))))
 Case conversion may be inaccurate. Consider using '#align basis.forall_coord_eq_zero_iff Basis.forall_coord_eq_zero_iffₓ'. -/
 theorem forall_coord_eq_zero_iff {x : M} : (∀ i, b.Coord i x = 0) ↔ x = 0 :=
   Iff.trans (by simp only [b.coord_apply, Finsupp.ext_iff, Finsupp.zero_apply])
@@ -343,7 +343,7 @@ noncomputable def sumCoords : M →ₗ[R] R :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u2, u2} ι R R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u2} R))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u3, u3} ι R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u3} R))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u3, u3} ι R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u3} R))
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords Basis.coe_sumCoordsₓ'. -/
 @[simp]
 theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i => id :=
@@ -354,7 +354,7 @@ theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u2, succ u1} R ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) m))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u3, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) m) ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) m) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) m) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) m) _inst_1))) (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) m))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u3, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) m) ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) m) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) m) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) m) _inst_1))) (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) m))
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords_eq_finsum Basis.coe_sumCoords_eq_finsumₓ'. -/
 theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b.Coord i m :=
   by
@@ -369,7 +369,7 @@ theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι], Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finset.sum.{max u3 u2, u1} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) ι (Pi.addCommMonoid.{u3, u2} M (fun (ᾰ : M) => R) (fun (i : M) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i)))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u3} ι], Eq.{max (succ u2) (succ u1)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) a) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.sum.{max u2 u1, u3} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) ι (LinearMap.addCommMonoid.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i)))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u3} ι], Eq.{max (succ u2) (succ u1)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) a) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.sum.{max u2 u1, u3} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) ι (LinearMap.addCommMonoid.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords_of_fintype Basis.coe_sumCoords_of_fintypeₓ'. -/
 @[simp]
 theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i, b.Coord i :=
@@ -383,7 +383,7 @@ theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i,
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) _inst_1)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) _inst_1)))
 Case conversion may be inaccurate. Consider using '#align basis.sum_coords_self_apply Basis.sumCoords_self_applyₓ'. -/
 @[simp]
 theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
@@ -395,7 +395,7 @@ theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.Dvd.{u2} R (semigroupDvd.{u2} R (SemigroupWithZero.toSemigroup.{u2} R (NonUnitalSemiring.toSemigroupWithZero.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1)))) r (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) r m))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.dvd.{u3} R (semigroupDvd.{u3} R (SemigroupWithZero.toSemigroup.{u3} R (NonUnitalSemiring.toSemigroupWithZero.{u3} R (Semiring.toNonUnitalSemiring.{u3} R _inst_1)))) r (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) r m))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.dvd.{u3} R (semigroupDvd.{u3} R (SemigroupWithZero.toSemigroup.{u3} R (NonUnitalSemiring.toSemigroupWithZero.{u3} R (Semiring.toNonUnitalSemiring.{u3} R _inst_1)))) r (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) r m))
 Case conversion may be inaccurate. Consider using '#align basis.dvd_coord_smul Basis.dvd_coord_smulₓ'. -/
 theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
   ⟨b.Coord i m, by simp⟩
@@ -405,7 +405,7 @@ theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) f i)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) f i)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_repr_symm Basis.coord_repr_symmₓ'. -/
 theorem coord_repr_symm (b : Basis ι R M) (i : ι) (f : ι →₀ R) : b.Coord i (b.repr.symm f) = f i :=
   by simp only [repr_symm_apply, coord_apply, repr_total]
@@ -425,7 +425,7 @@ variable {M₁ : Type _} [AddCommMonoid M₁] [Module R₁ M₁]
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u2, u4} R R₁ (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u5}} [_inst_9 : AddCommMonoid.{u5} M₁] [_inst_10 : Module.{u4, u5} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u5} M₁ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 Case conversion may be inaccurate. Consider using '#align basis.ext Basis.extₓ'. -/
 /-- Two linear maps are equal if they are equal on basis vectors. -/
 theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
@@ -457,7 +457,7 @@ omit σ'
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
 Case conversion may be inaccurate. Consider using '#align basis.ext_elem_iff Basis.ext_elem_iffₓ'. -/
 /-- Two elements are equal iff their coordinates are equal. -/
 theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
@@ -468,7 +468,7 @@ theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
 Case conversion may be inaccurate. Consider using '#align basis.ext_elem Basis.ext_elemₓ'. -/
 alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 #align basis.ext_elem Basis.ext_elem
@@ -477,7 +477,7 @@ alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff Basis.repr_eq_iffₓ'. -/
 theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
     ↑b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
@@ -488,7 +488,7 @@ theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff' Basis.repr_eq_iff'ₓ'. -/
 theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
     b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
@@ -499,7 +499,7 @@ theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) x) (Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) x) (Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) x) (Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.apply_eq_iff Basis.apply_eq_iffₓ'. -/
 theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x = Finsupp.single i 1 :=
   ⟨fun h => h ▸ b.repr_self i, fun h => b.repr.Injective ((b.repr_self i).trans h.symm)⟩
@@ -509,7 +509,7 @@ theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u1 u2} (ι -> R) (Pi.instAdd.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (SMul.smul.{u2, max u1 u2} R (ι -> R) (Function.hasSMul.{u1, u2, u2} ι R R (Mul.toSMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))) -> (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u3 u2} (ι -> R) (Pi.instAdd.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u2, u1} R M _inst_1 _inst_2 _inst_3))))) c x)) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (ι -> R) (ι -> R) (instHSMul.{u2, max u3 u2} R (ι -> R) (Pi.instSMul.{u3, u2, u2} ι R (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.3682 : ι) => R) (fun (i : ι) => SMulZeroClass.toSMul.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MulZeroClass.toSMulWithZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))) -> (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u3 u2} (ι -> R) (Pi.instAdd.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u2, u1} R M _inst_1 _inst_2 _inst_3))))) c x)) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (ι -> R) (ι -> R) (instHSMul.{u2, max u3 u2} R (ι -> R) (Pi.instSMul.{u3, u2, u2} ι R (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.3682 : ι) => R) (fun (i : ι) => SMulZeroClass.toSMul.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MulZeroClass.toSMulWithZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))) -> (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_apply_eq Basis.repr_apply_eqₓ'. -/
 /-- An unbundled version of `repr_eq_iff` -/
 theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f y)
@@ -537,7 +537,7 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b₁ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
 Case conversion may be inaccurate. Consider using '#align basis.eq_of_repr_eq_repr Basis.eq_ofRepr_eq_reprₓ'. -/
 /-- Two bases are equal if they assign the same coordinates. -/
 theorem eq_ofRepr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
@@ -576,7 +576,7 @@ protected def map : Basis ι R M' :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (i : ι), Eq.{succ u4} M' (coeFn.{max (succ u1) (succ u2) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) => ι -> M') (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) ι (fun (_x : ι) => M') (Basis.funLike.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5)) (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f) i) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M') i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M') _x) (Basis.funLike.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) (Basis.map.{u3, u2, u1, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f) i) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u2, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u2, u4} R M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u4, max u1 u4} R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u4, max u1 u4} R R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M') i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M') _x) (Basis.funLike.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) (Basis.map.{u3, u2, u1, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f) i) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M') _x) (SMulHomClass.toFunLike.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u2, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u2, u4} R M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u4, max u1 u4} R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u4, max u1 u4} R R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))
 Case conversion may be inaccurate. Consider using '#align basis.map_apply Basis.map_applyₓ'. -/
 @[simp]
 theorem map_apply (i) : b.map f i = f (b i) :=
@@ -681,7 +681,7 @@ theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u3} R (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.coeFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u4}} {M : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u4, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) i') (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u3 u4, max (max u3 u4) u2} R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u3 u4, max (max u3 u4) u2} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u3 u4} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u3, u4, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u3, u4, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u4)) (succ u2), succ u2, max (succ u1) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u1 u4, max (max u1 u4) u2} R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u1 u4, max (max u1 u4) u2} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u1 u4} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u4}} {M : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u4, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) i') (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u3 u4, max (max u3 u4) u2} R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u3 u4, max (max u3 u4) u2} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u3 u4} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u3, u4, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u3, u4, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u4)) (succ u2), succ u2, max (succ u1) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u1 u4, max (max u1 u4) u2} R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u1 u4, max (max u1 u4) u2} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u1 u4} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
 Case conversion may be inaccurate. Consider using '#align basis.repr_reindex_apply Basis.repr_reindex_applyₓ'. -/
 theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.symm i') :=
   show (Finsupp.domLCongr e : _ ≃ₗ[R] _) (b.repr x) i' = _ by simp
@@ -691,7 +691,7 @@ theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.sy
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u2, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) x) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u2, max (succ u4) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u4 u3, max (max u4 u3) u2} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u4 u3, max (max u4 u3) u2} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u4 u3} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u4, u3, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u4, u3, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u4, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} ι ι') e) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) x))
+  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) x) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u2, max (succ u4) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u4 u3, max (max u4 u3) u2} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u4 u3, max (max u4 u3) u2} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u4 u3} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u4, u3, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u4, u3, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u4, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} ι ι') e) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) x))
 Case conversion may be inaccurate. Consider using '#align basis.repr_reindex Basis.repr_reindexₓ'. -/
 @[simp]
 theorem repr_reindex : (b.reindex e).repr x = (b.repr x).mapDomain e :=
@@ -768,7 +768,7 @@ theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.mem_range_self.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.mem_range_self.{succ u1, u2} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.mem_range_self.{succ u1, u2} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr_self Basis.reindexRange_repr_selfₓ'. -/
 theorem reindexRange_repr_self (i : ι) :
     b.reindexRange.repr (b i) = Finsupp.single ⟨b i, mem_range_self i⟩ 1 :=
@@ -796,7 +796,7 @@ theorem reindexRange_apply (x : range b) : b.reindexRange x = x :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) bi), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) bi (Exists.intro.{succ u1} ι (fun (y : ι) => Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b y) bi) i h))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) bi), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) bi), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr' Basis.reindexRange_repr'ₓ'. -/
 theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
     b.reindexRange.repr x ⟨bi, ⟨i, h⟩⟩ = b.repr x i :=
@@ -821,7 +821,7 @@ theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.range.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) (Set.mem_range_self.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) i)), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr Basis.reindexRange_reprₓ'. -/
 @[simp]
 theorem reindexRange_repr (x : M) (i : ι) (h := Set.mem_range_self i) :
@@ -872,7 +872,7 @@ theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRang
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u2} M] (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.mem_image_of_mem.{u2, u1} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u2} M] (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.mem_image_of_mem.{u2, u1} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr_self Basis.reindexFinsetRange_repr_selfₓ'. -/
 theorem reindexFinsetRange_repr_self (i : ι) :
     b.reindexFinsetRange.repr (b i) =
@@ -888,7 +888,7 @@ theorem reindexFinsetRange_repr_self (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) _x) (Finsupp.funLike.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) _x) (Finsupp.funLike.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr Basis.reindexFinsetRange_reprₓ'. -/
 @[simp]
 theorem reindexFinsetRange_repr (x : M) (i : ι)
@@ -1009,7 +1009,7 @@ def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M'
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u2, u2, u2, u3, max u4 u2, u4} R R R M (Finsupp.{u4, u2} M' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u4, u4, u2} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u2, u2, u2, u3, max u1 u2, max u4 u2} R R R M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (Finsupp.{u4, u2} M' R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.lmapDomain.{u1, u2, u2, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) M' f) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u5) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), max (succ u2) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u5 u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u5, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u3, u3, u3, u5, max u3 u4, u4} R R R M (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.total.{u4, u4, u3} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u3, u3, u3, u5, max u3 u2, max u3 u4} R R R M (Finsupp.{u2, u3} ι R (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.lmapDomain.{u2, u3, u3, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1) M' f) (LinearEquiv.toLinearMap.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b))))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u5) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), max (succ u2) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u5 u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u5, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u3, u3, u3, u5, max u3 u4, u4} R R R M (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.total.{u4, u4, u3} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u3, u3, u3, u5, max u3 u2, max u3 u4} R R R M (Finsupp.{u2, u3} ι R (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.lmapDomain.{u2, u3, u3, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1) M' f) (LinearEquiv.toLinearMap.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b))))
 Case conversion may be inaccurate. Consider using '#align basis.constr_def Basis.constr_defₓ'. -/
 theorem constr_def (f : ι → M') :
     b.constr S f = Finsupp.total M' M' R id ∘ₗ Finsupp.lmapDomain R R f ∘ₗ ↑b.repr :=
@@ -1020,7 +1020,7 @@ theorem constr_def (f : ι → M') :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u1, u2, u4} ι R M' (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) a (f b)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply Basis.constr_applyₓ'. -/
 theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum fun b a => a • f b :=
   by
@@ -1032,7 +1032,7 @@ theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum f
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (f i)
 but is expected to have type
-  forall {ι : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), max (succ u4) (succ u5), max (succ u2) (succ u5)} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u4 u5} S (ι -> M') (AddMonoid.toZero.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u4 u5, max u2 u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u4, u3, u2, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (f i)
+  forall {ι : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), max (succ u4) (succ u5), max (succ u2) (succ u5)} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u4 u5} S (ι -> M') (AddMonoid.toZero.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u4 u5, max u2 u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u4, u3, u2, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.constr_basis Basis.constr_basisₓ'. -/
 @[simp]
 theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i) = f i := by
@@ -1043,7 +1043,7 @@ theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u4} M' (g i) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u3} M' (g i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) g) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u3} M' (g i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) g) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
 Case conversion may be inaccurate. Consider using '#align basis.constr_eq Basis.constr_eqₓ'. -/
 theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)) : b.constr S g = f :=
   b.ext fun i => (b.constr_basis S g i).trans (h i)
@@ -1053,7 +1053,7 @@ theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) f
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) f
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) f
 Case conversion may be inaccurate. Consider using '#align basis.constr_self Basis.constr_selfₓ'. -/
 theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
   b.constr_eq S fun x => rfl
@@ -1063,7 +1063,7 @@ theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u1} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u2, u2, u3, u4, max u3 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u2, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u1} M' ι f))
 but is expected to have type
-  forall {ι : Type.{u5}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u5, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u5} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u3, u3, u2, u4, max u2 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (LinearMap.semilinearMapClass.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomSurjective.ids.{u3} R _inst_1) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u4), max (succ u5) (succ u4), max (succ u2) (succ u4)} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u5 u4} S (ι -> M') (AddMonoid.toZero.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u5 u4, max u2 u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u5, u3, u2, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u3, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u5} M' ι f))
+  forall {ι : Type.{u5}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u5, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u5} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u3, u3, u2, u4, max u2 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (LinearMap.semilinearMapClass.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomSurjective.ids.{u3} R _inst_1) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u4), max (succ u5) (succ u4), max (succ u2) (succ u4)} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u5 u4} S (ι -> M') (AddMonoid.toZero.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u5 u4, max u2 u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u5, u3, u2, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u3, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u5} M' ι f))
 Case conversion may be inaccurate. Consider using '#align basis.constr_range Basis.constr_rangeₓ'. -/
 theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span R (range f) := by
   rw [b.constr_def S f, LinearMap.range_comp, LinearMap.range_comp, LinearEquiv.range, ←
@@ -1075,7 +1075,7 @@ theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u1, succ u4, succ u4} ι M' M' (coeFn.{succ u4, succ u4} (LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (fun (_x : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) => M' -> M') (LinearMap.hasCoeToFun.{u2, u2, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f) v)) (LinearMap.comp.{u2, u2, u2, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u5, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u4} R S M' (SMulZeroClass.toSMul.{u5, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u4} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u4} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u5, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (a : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M') => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M') => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (LinearMap.comp.{u5, u5, u5, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHomCompTriple.ids.{u5, u5} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u5, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u4} R S M' (SMulZeroClass.toSMul.{u5, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u4} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u4} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u5, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (a : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M') => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M') => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (LinearMap.comp.{u5, u5, u5, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHomCompTriple.ids.{u5, u5} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
 Case conversion may be inaccurate. Consider using '#align basis.constr_comp Basis.constr_compₓ'. -/
 @[simp]
 theorem constr_comp (f : M' →ₗ[R] M') (v : ι → M') : b.constr S (f ∘ v) = f.comp (b.constr S v) :=
@@ -1102,7 +1102,7 @@ protected def equiv : M ≃ₗ[R] M' :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{succ u5} M' (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b' (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e i))
 but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u4, succ u1} ι ι'), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equiv.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι ι') e i))
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u4, succ u1} ι ι'), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equiv.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι ι') e i))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_apply Basis.equiv_applyₓ'. -/
 @[simp]
 theorem equiv_apply : b.Equiv b' e (b i) = b' (e i) := by simp [Basis.equiv]
@@ -1175,7 +1175,7 @@ protected def prod : Basis (Sum ι ι') R (M × M') :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u4, u5} M M') (i : ι), Eq.{succ u3} R (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => (Sum.{u1, u2} ι ι') -> R) (Finsupp.coeFun.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ (max u4 u5)) (succ (max (max u1 u2) u3)), max (succ (max u4 u5)) (succ (max (max u1 u2) u3))} (LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => (Prod.{u4, u5} M M') -> (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, max u4 u5, max (max u1 u2) u3} R R (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u1, u2} ι ι' i)) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u4, u5} M M' x)) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u5), succ u5, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u5} R M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u5} R M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u5} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, max u2 u3, max (max u2 u3) u5} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, max u2 u3, max (max u2 u3) u5} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u5, u4} M M' x)) i)
+  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u5), succ u5, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u5} R M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u5} R M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u5} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, max u2 u3, max (max u2 u3) u5} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, max u2 u3, max (max u2 u3) u5} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u5, u4} M M' x)) i)
 Case conversion may be inaccurate. Consider using '#align basis.prod_repr_inl Basis.prod_repr_inlₓ'. -/
 @[simp]
 theorem prod_repr_inl (x) (i) : (b.Prod b').repr x (Sum.inl i) = b.repr x.1 i :=
@@ -1186,7 +1186,7 @@ theorem prod_repr_inl (x) (i) : (b.Prod b').repr x (Sum.inl i) = b.repr x.1 i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u4, u5} M M') (i : ι'), Eq.{succ u3} R (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => (Sum.{u1, u2} ι ι') -> R) (Finsupp.coeFun.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ (max u4 u5)) (succ (max (max u1 u2) u3)), max (succ (max u4 u5)) (succ (max (max u1 u2) u3))} (LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => (Prod.{u4, u5} M M') -> (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, max u4 u5, max (max u1 u2) u3} R R (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u1, u2} ι ι' i)) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.coeFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u5) (succ (max u2 u3)), max (succ u5) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M' -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u5, max u2 u3} R R M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u4, u5} M M' x)) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι'), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u4, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u4} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u1 u3, max (max u1 u3) u4} R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u1 u3, max (max u1 u3) u4} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u1 u3} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u5, u4} M M' x)) i)
+  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι'), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u4, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M') => Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u4} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u1 u3, max (max u1 u3) u4} R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u1 u3, max (max u1 u3) u4} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u1 u3} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u5, u4} M M' x)) i)
 Case conversion may be inaccurate. Consider using '#align basis.prod_repr_inr Basis.prod_repr_inrₓ'. -/
 @[simp]
 theorem prod_repr_inr (x) (i) : (b.Prod b').repr x (Sum.inr i) = b'.repr x.2 i :=
@@ -1259,7 +1259,7 @@ theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u1, u2} ι ι'), Eq.{max (succ u4) (succ u5)} (Prod.{u4, u5} M M') (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u1, u2, max (succ u4) (succ u5)} ι ι' (Prod.{u4, u5} M M') (Function.comp.{succ u1, succ u4, max (succ u4) (succ u5)} ι M (Prod.{u4, u5} M M') (coeFn.{max (succ u4) (succ (max u4 u5)), max (succ u4) (succ (max u4 u5))} (LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u4, max u4 u5} R R M (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inl.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b)) (Function.comp.{succ u2, succ u5, max (succ u4) (succ u5)} ι' M' (Prod.{u4, u5} M M') (coeFn.{max (succ u5) (succ (max u4 u5)), max (succ u5) (succ (max u4 u5))} (LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M' -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u5, max u4 u5} R R M' (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inr.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b')) i)
 but is expected to have type
-  forall {ι : Type.{u5}} {ι' : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u1, u2} R M' _inst_1 _inst_4] (b : Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u5, u4} ι ι'), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') i) (FunLike.coe.{max (max (max (max (succ u5) (succ u4)) (succ u1)) (succ u3)) (succ u2), max (succ u5) (succ u4), max (succ u3) (succ u2)} (Basis.{max u4 u5, u1, max u2 u3} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u5, u4} ι ι') (fun (_x : Sum.{u5, u4} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') _x) (Basis.funLike.{max u5 u4, u1, max u3 u2} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u5, u4, u1, u3, u2} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u5, u4, max (succ u3) (succ u2)} ι ι' (Prod.{u3, u2} M M') (Function.comp.{succ u5, succ u3, max (succ u3) (succ u2)} ι M (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u3, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (Prod.{u3, u2} M M') _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u3, max u3 u2} R R M (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inl.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u5) (succ u1)) (succ u3), succ u5, succ u3} (Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (Function.comp.{succ u4, succ u2, max (succ u3) (succ u2)} ι' M' (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u2, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M' (Prod.{u3, u2} M M') _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M') => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, max u3 u2} R R M' (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inr.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u2), succ u4, succ u2} (Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) b')) i)
+  forall {ι : Type.{u5}} {ι' : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u1, u2} R M' _inst_1 _inst_4] (b : Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u5, u4} ι ι'), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') i) (FunLike.coe.{max (max (max (max (succ u5) (succ u4)) (succ u1)) (succ u3)) (succ u2), max (succ u5) (succ u4), max (succ u3) (succ u2)} (Basis.{max u4 u5, u1, max u2 u3} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u5, u4} ι ι') (fun (_x : Sum.{u5, u4} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') _x) (Basis.funLike.{max u5 u4, u1, max u3 u2} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u5, u4, u1, u3, u2} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u5, u4, max (succ u3) (succ u2)} ι ι' (Prod.{u3, u2} M M') (Function.comp.{succ u5, succ u3, max (succ u3) (succ u2)} ι M (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u3, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (Prod.{u3, u2} M M') _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u3, max u3 u2} R R M (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inl.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u5) (succ u1)) (succ u3), succ u5, succ u3} (Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (Function.comp.{succ u4, succ u2, max (succ u3) (succ u2)} ι' M' (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u2, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M' (Prod.{u3, u2} M M') _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M') => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, max u3 u2} R R M' (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inr.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u2), succ u4, succ u2} (Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) b')) i)
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply Basis.prod_applyₓ'. -/
 @[simp]
 theorem prod_apply (i) :
@@ -1355,7 +1355,7 @@ theorem singleton_apply (ι R : Type _) [Unique ι] [Semiring R] (i) : Basis.sin
 lean 3 declaration is
   forall (ι : Type.{u1}) (R : Type.{u2}) [_inst_6 : Unique.{succ u1} ι] [_inst_7 : Semiring.{u2} R] (x : R) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u2, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7) R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) (fun (_x : LinearEquiv.{u2, u2, u2, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7) R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) => R -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u2, max u1 u2} R R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7)) (Basis.repr.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7) (Basis.singleton.{u1, u2} ι R _inst_6 _inst_7)) x) i) x
 but is expected to have type
-  forall (ι : Type.{u2}) (R : Type.{u1}) [_inst_6 : Unique.{succ u2} ι] [_inst_7 : Semiring.{u1} R] (x : R) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : R) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (SMulZeroClass.toSMul.{u1, u1} R R (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribSMul.toSMulZeroClass.{u1, u1} R R (AddMonoid.toAddZeroClass.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribMulAction.toDistribSMul.{u1, u1} R R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, max u2 u1, max u2 u1} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, max u2 u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7)))))) (Basis.repr.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7) (Basis.singleton.{u2, u1} ι R _inst_6 _inst_7)) x) i) x
+  forall (ι : Type.{u2}) (R : Type.{u1}) [_inst_6 : Unique.{succ u2} ι] [_inst_7 : Semiring.{u1} R] (x : R) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : R) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (SMulZeroClass.toSMul.{u1, u1} R R (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribSMul.toSMulZeroClass.{u1, u1} R R (AddMonoid.toAddZeroClass.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribMulAction.toDistribSMul.{u1, u1} R R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, max u2 u1, max u2 u1} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, max u2 u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7)))))) (Basis.repr.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7) (Basis.singleton.{u2, u1} ι R _inst_6 _inst_7)) x) i) x
 Case conversion may be inaccurate. Consider using '#align basis.singleton_repr Basis.singleton_reprₓ'. -/
 @[simp]
 theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
@@ -1470,7 +1470,7 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (x i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_symm_apply Basis.equivFun_symm_applyₓ'. -/
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
@@ -1483,7 +1483,7 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
@@ -1505,7 +1505,7 @@ theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.tr
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
 Case conversion may be inaccurate. Consider using '#align basis.sum_equiv_fun Basis.sum_equivFunₓ'. -/
 theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
   by
@@ -1517,7 +1517,7 @@ theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
 Case conversion may be inaccurate. Consider using '#align basis.sum_repr Basis.sum_reprₓ'. -/
 theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
   b.sum_equivFun u
@@ -1527,7 +1527,7 @@ theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u1} ι] (i : ι) (j : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_self Basis.equivFun_selfₓ'. -/
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
@@ -1538,7 +1538,7 @@ theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))))) c
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u3) (succ u2)} (forall (ᾰ : ι), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) ᾰ) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u1, u3} M ι _inst_2 (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))))) c
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u3) (succ u2)} (forall (ᾰ : ι), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) ᾰ) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u1, u3} M ι _inst_2 (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))))) c
 Case conversion may be inaccurate. Consider using '#align basis.repr_sum_self Basis.repr_sum_selfₓ'. -/
 theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) = c :=
   by
@@ -1565,7 +1565,7 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
 Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
@@ -1577,7 +1577,7 @@ theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u1, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u1 u2} (ι -> R) 0 (OfNat.mk.{max u1 u2} (ι -> R) 0 (Zero.zero.{max u1 u2} (ι -> R) (Pi.instZero.{u1, u2} ι (fun (a : ι) => R) (fun (i : ι) => MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_equiv_fun Basis.coe_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
@@ -1603,6 +1603,12 @@ theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivF
     simp only [Finset.mem_univ, if_true, Pi.zero_apply, one_smul, Finset.sum_ite_eq', zero_smul]
 #align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFun
 
+/- warning: basis.equiv_fun_of_equiv_fun -> Basis.equivFun_ofEquivFun is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) e
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12306 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))), Eq.{max (max (succ u1) (succ u3)) (succ u2)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Basis.equivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) e
+Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_of_equiv_fun Basis.equivFun_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.equivFun_ofEquivFun (e : M ≃ₗ[R] ι → R) : (Basis.ofEquivFun e).equivFun = e :=
   by
@@ -1618,7 +1624,7 @@ variable [SMulCommClass R S M']
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_7 : Semiring.{u5} S] [_inst_8 : Module.{u5, u4} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_7)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_7) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u4, u1} M' ι _inst_4 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
@@ -1645,7 +1651,7 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
@@ -1695,7 +1701,7 @@ def equiv' (f : M → M') (g : M' → M) (hf : ∀ i, f (b i) ∈ range b') (hg
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.Mem.{u5, u5} M' (Set.{u5} M') (Set.hasMem.{u5} M') (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (Set.range.{u5, succ u2} M' ι' (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b'))) (hg : forall (i : ι'), Membership.Mem.{u4, u4} M (Set.{u4} M) (Set.hasMem.{u4} M) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b))) (hgf : forall (i : ι), Eq.{succ u4} M (g (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (i : ι), Eq.{succ u5} M' (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u3, u3, u4, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u4, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u3, u3, u4, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1)) (Basis.equiv'.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))
 but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))
 Case conversion may be inaccurate. Consider using '#align basis.equiv'_apply Basis.equiv'_applyₓ'. -/
 @[simp]
 theorem equiv'_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι) :
@@ -1707,7 +1713,7 @@ theorem equiv'_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.Mem.{u5, u5} M' (Set.{u5} M') (Set.hasMem.{u5} M') (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (Set.range.{u5, succ u2} M' ι' (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b'))) (hg : forall (i : ι'), Membership.Mem.{u4, u4} M (Set.{u4} M) (Set.hasMem.{u4} M) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b))) (hgf : forall (i : ι), Eq.{succ u4} M (g (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (i : ι'), Eq.{succ u4} M (coeFn.{max (succ u5) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u3, u3, u5, u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) (fun (_x : LinearEquiv.{u3, u3, u5, u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) => M' -> M) (LinearEquiv.hasCoeToFun.{u3, u3, u5, u4} R R M' M (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1)) (LinearEquiv.symm.{u3, u3, u4, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))
 but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι'), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => M) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (a : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') a) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (FunLike.coe.{max (succ u2) (succ u5), succ u5, succ u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => M) _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, u2, max u2 u5} R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, u2, max u2 u5} R R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, u2} R R M' M (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (LinearEquiv.symm.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι'), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M') => M) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (a : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') a) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (FunLike.coe.{max (succ u2) (succ u5), succ u5, succ u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M') => M) _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, u2, max u2 u5} R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, u2, max u2 u5} R R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, u2} R R M' M (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (LinearEquiv.symm.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))
 Case conversion may be inaccurate. Consider using '#align basis.equiv'_symm_apply Basis.equiv'_symm_applyₓ'. -/
 @[simp]
 theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι') :
@@ -1719,7 +1725,7 @@ theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι'
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : CommSemiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2] (b : Basis.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u2} R (Finset.sum.{u2, u4} R ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) (coeFn.{max (succ u4) (succ u2) (succ u3), max (succ u4) (succ u3)} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u4) (succ u2) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3)) b' j)) i) (coeFn.{max (succ u4) (succ u2), max (succ u4) (succ u2)} (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι' -> R) (Finsupp.coeFun.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u4 u2)), max (succ u3) (succ (max u4 u2))} (LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u4 u2} R R M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b') x) j))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] (b : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Finset.sum.{u3, u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u3, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) j) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (instHMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonUnitalNonAssocSemiring.toMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1))))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u4, succ u2} (Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b' j)) i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u4, max (max u3 u2) u4} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u4, max (max u3 u2) u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b') x) j))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] (b : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Finset.sum.{u3, u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u3, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) j) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (instHMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonUnitalNonAssocSemiring.toMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1))))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u4, succ u2} (Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b' j)) i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u4, max (max u3 u2) u4} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u4, max (max u3 u2) u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b') x) j))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.sum_repr_mul_repr Basis.sum_repr_mul_reprₓ'. -/
 theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i : ι) :
     (∑ j : ι', b.repr (b' j) i * b'.repr x j) = b.repr x i :=
@@ -1813,7 +1819,7 @@ protected noncomputable def mk : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
@@ -1847,7 +1853,7 @@ variable {hli hsp}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v i)) (Ring.toSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v i)) _inst_1))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v i)) (Ring.toSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v i)) _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_eq Basis.mk_coord_apply_eqₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 1 on the `i`th element of the
 basis. -/
@@ -1859,7 +1865,7 @@ theorem mk_coord_apply_eq (i : ι) : (Basis.mk hli hsp).Coord i (v i) = 1 :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} {i : ι} {j : ι}, (Ne.{succ u1} ι j i) -> (Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} {i : ι} {j : ι}, (Ne.{succ u3} ι j i) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) _inst_1))))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} {i : ι} {j : ι}, (Ne.{succ u3} ι j i) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_ne Basis.mk_coord_apply_neₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 0 on the `j`th element of the
 basis if `j ≠ i`. -/
@@ -1872,7 +1878,7 @@ theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} [_inst_10 : DecidableEq.{succ u1} ι] {i : ι} {j : ι}, Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} R (Eq.{succ u1} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) _inst_1))))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => R) (v j)) _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply Basis.mk_coord_applyₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to the Kronecker delta on the
 `j`th element of the basis. -/
@@ -1930,7 +1936,7 @@ end Span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15516 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15502 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15585 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15571 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
@@ -1964,7 +1970,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15936 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16005 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
@@ -1976,7 +1982,7 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16042 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16028 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16111 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16097 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
@@ -2032,7 +2038,7 @@ theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (v : M) (i : ι), Eq.{succ u2} R₂ (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSMul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (SMul.smul.{u2, u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) R₂ (Units.hasSmul.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e) v) i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_units_smul Basis.repr_unitsSMulₓ'. -/
 @[simp]
 theorem repr_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
@@ -2122,7 +2128,7 @@ noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (yO : Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hNO : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toHasLe.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (Submodule.ofLe.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N O hNO)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLeₓ'. -/
 @[simp]
 theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
@@ -2170,7 +2176,7 @@ theorem finTwoProd_one (R : Type _) [Semiring R] : Basis.finTwoProd R 1 = (0, 1)
 lean 3 declaration is
   forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} ((Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> R) (coeFn.{succ u1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (fun (_x : Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> R) (Finsupp.coeFun.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (coeFn.{succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) => (Prod.{u1, u1} R R) -> (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) _inst_10 _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero))) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
 but is expected to have type
-  forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} (forall (ᾰ : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) ᾰ) (FunLike.coe.{succ u1, 1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) _x) (Finsupp.funLike.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (Prod.{u1, u1} R R) (fun (_x : Prod.{u1, u1} R R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u1, u1} R R) => Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _x) (SMulHomClass.toFunLike.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (SMulZeroClass.toSMul.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toZero.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toAddZeroClass.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Prod.{u1, u1} R R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))))) (SMulZeroClass.toSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toZero.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toAddZeroClass.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)))))) (DistribMulActionHomClass.toSMulHomClass.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, u1, u1} R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)))))) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
+  forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} (forall (ᾰ : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) ᾰ) (FunLike.coe.{succ u1, 1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) _x) (Finsupp.funLike.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (Prod.{u1, u1} R R) (fun (_x : Prod.{u1, u1} R R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Prod.{u1, u1} R R) => Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _x) (SMulHomClass.toFunLike.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (SMulZeroClass.toSMul.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toZero.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toAddZeroClass.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Prod.{u1, u1} R R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))))) (SMulZeroClass.toSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toZero.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toAddZeroClass.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)))))) (DistribMulActionHomClass.toSMulHomClass.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, u1, u1} R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)))))) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_fin_two_prod_repr Basis.coe_finTwoProd_reprₓ'. -/
 @[simp]
 theorem coe_finTwoProd_repr {R : Type _} [Semiring R] (x : R × R) :
@@ -2641,7 +2647,7 @@ theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i
 lean 3 declaration is
   forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (m : coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (i : ι), Eq.{succ u4} S (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (fun (_x : RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) => R -> S) (RingHom.hasCoeToFun.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (algebraMap.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Basis.repr.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Basis.restrictScalars.{u1, u2, u3, u4} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (coeFn.{max (succ u1) (succ u4), max (succ u1) (succ u4)} (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (fun (_x : Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) => ι -> S) (Finsupp.coeFun.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (coeFn.{max (succ u3) (succ (max u1 u4)), max (succ u3) (succ (max u1 u4))} (LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (fun (_x : LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) => M -> (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (LinearEquiv.hasCoeToFun.{u4, u4, u3, max u1 u4} S S M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Basis.repr.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6 b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))))) m)) i)
 but is expected to have type
-  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (a : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) a) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (a : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) a) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (_x : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) m)) i)
+  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (a : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) a) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (a : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) a) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (_x : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) m)) i)
 Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_applyₓ'. -/
 @[simp]
 theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
@@ -2662,7 +2668,7 @@ theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (m : M), Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) m (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (forall (i : ι), Membership.Mem.{u4, u4} S (Set.{u4} S) (Set.hasMem.{u4} S) (coeFn.{max (succ u1) (succ u4), max (succ u1) (succ u4)} (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (fun (_x : Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) => ι -> S) (Finsupp.coeFun.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (coeFn.{max (succ u3) (succ (max u1 u4)), max (succ u3) (succ (max u1 u4))} (LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (fun (_x : LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) => M -> (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (LinearEquiv.hasCoeToFun.{u4, u4, u3, max u1 u4} S S M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Basis.repr.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6 b) m) i) (Set.range.{u4, succ u2} S R (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (fun (_x : RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) => R -> S) (RingHom.hasCoeToFun.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (algebraMap.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))
 but is expected to have type
-  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : M), Iff (Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) m (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (forall (i : ι), Membership.mem.{u1, u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) i) (Set.{u1} S) (Set.instMembershipSet.{u1} S) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) m) i) (Set.range.{u1, succ u3} S R (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5))))
+  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : M), Iff (Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) m (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (forall (i : ι), Membership.mem.{u1, u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) i) (Set.{u1} S) (Set.instMembershipSet.{u1} S) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) m) i) (Set.range.{u1, succ u3} S R (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_span_iff_repr_mem Basis.mem_span_iff_repr_memₓ'. -/
 /-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
 coordinates of `m` on the basis `b` are in `R` (see `basis.mem_span` for the case `R = S`). -/
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl, Mario Carneiro, Alexander Bentkamp
 
 ! This file was ported from Lean 3 source module linear_algebra.basis
-! leanprover-community/mathlib commit 04cdee31e196e30f507e8e9eb2d06e02c9ff6310
+! leanprover-community/mathlib commit 13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -1603,6 +1603,13 @@ theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivF
     simp only [Finset.mem_univ, if_true, Pi.zero_apply, one_smul, Finset.sum_ite_eq', zero_smul]
 #align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFun
 
+@[simp]
+theorem Basis.equivFun_ofEquivFun (e : M ≃ₗ[R] ι → R) : (Basis.ofEquivFun e).equivFun = e :=
+  by
+  ext j
+  simp_rw [Basis.equivFun_apply, Basis.ofEquivFun_repr_apply]
+#align basis.equiv_fun_of_equiv_fun Basis.equivFun_ofEquivFun
+
 variable (S : Type _) [Semiring S] [Module S M']
 
 variable [SMulCommClass R S M']
Diff
@@ -598,7 +598,7 @@ attribute [local instance] SMul.comp.isScalarTower
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u4, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M M (instHSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (SMulZeroClass.toSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (MonoidWithZero.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u2) (succ u4), succ u2, succ u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') _x) (MulHomClass.toFunLike.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3))))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u4, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M M (instHSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (SMulZeroClass.toSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (MonoidWithZero.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u2) (succ u4), succ u2, succ u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') _x) (MulHomClass.toFunLike.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3))))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
 Case conversion may be inaccurate. Consider using '#align basis.map_coeffs Basis.mapCoeffsₓ'. -/
 /-- If `R` and `R'` are isomorphic rings that act identically on a module `M`,
 then a basis for `M` as `R`-module is also a basis for `M` as `R'`-module.
@@ -621,7 +621,7 @@ def mapCoeffs : Basis ι R' M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u4} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u4} M (HSMul.hSMul.{u2, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M M (instHSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u4, u4} R M M (instHSMul.{u1, u4} R M (SMulZeroClass.toSMul.{u1, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u4} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u4} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u1, u4} R M _inst_1 _inst_2 _inst_3))))) c x)) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u3, succ u4} (Basis.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u3, u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, succ u4} (Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) b i)
+  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u4} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u4} M (HSMul.hSMul.{u2, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M M (instHSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u4, u4} R M M (instHSMul.{u1, u4} R M (SMulZeroClass.toSMul.{u1, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u4} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u4} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u1, u4} R M _inst_1 _inst_2 _inst_3))))) c x)) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u3, succ u4} (Basis.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u3, u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, succ u4} (Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) b i)
 Case conversion may be inaccurate. Consider using '#align basis.map_coeffs_apply Basis.mapCoeffs_applyₓ'. -/
 theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
   apply_eq_iff.mpr <| by simp [f.to_add_equiv_eq_coe]
@@ -631,7 +631,7 @@ theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)
 but is expected to have type
-  forall {ι : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u2, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M M (instHSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_2 _inst_3))))) c x)), Eq.{max (succ u4) (succ u3)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u3} (Basis.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u4, u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u3), succ u4, succ u3} (Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)
+  forall {ι : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u2, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M M (instHSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_2 _inst_3))))) c x)), Eq.{max (succ u4) (succ u3)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u3} (Basis.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u4, u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u3), succ u4, succ u3} (Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)
 Case conversion may be inaccurate. Consider using '#align basis.coe_map_coeffs Basis.coe_mapCoeffsₓ'. -/
 @[simp]
 theorem coe_mapCoeffs : (b.mapCoeffs f h : ι → M) = b :=
@@ -657,7 +657,7 @@ def reindex : Basis ι' R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u4} M (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) i') (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) i') (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
 Case conversion may be inaccurate. Consider using '#align basis.reindex_apply Basis.reindex_applyₓ'. -/
 theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
   show
@@ -670,7 +670,7 @@ theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u4)} ((fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u2, succ u1, succ u4} ι' ι M (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e)))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} (forall (a : ι'), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) a) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u4, u2, u3} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u4, succ u1, succ u3} ι' ι M (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u4} ι ι' e)))
+  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} (forall (a : ι'), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) a) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u4, u2, u3} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u4, succ u1, succ u3} ι' ι M (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u4} ι ι' e)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_reindex Basis.coe_reindexₓ'. -/
 @[simp]
 theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
@@ -681,7 +681,7 @@ theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u3} R (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.coeFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u4}} {M : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u4, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) i') (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u3 u4, max (max u3 u4) u2} R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u3 u4, max (max u3 u4) u2} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u3 u4} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u3, u4, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u3, u4, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u4)) (succ u2), succ u2, max (succ u1) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u1 u4, max (max u1 u4) u2} R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u1 u4, max (max u1 u4) u2} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u1 u4} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u4}} {M : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u4, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) i') (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u3 u4, max (max u3 u4) u2} R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u3 u4, max (max u3 u4) u2} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u3 u4} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u3, u4, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u3, u4, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u4)) (succ u2), succ u2, max (succ u1) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u1 u4, max (max u1 u4) u2} R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u1 u4, max (max u1 u4) u2} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u1 u4} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
 Case conversion may be inaccurate. Consider using '#align basis.repr_reindex_apply Basis.repr_reindex_applyₓ'. -/
 theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.symm i') :=
   show (Finsupp.domLCongr e : _ ≃ₗ[R] _) (b.repr x) i' = _ by simp
@@ -691,7 +691,7 @@ theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.sy
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u2, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) x) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u2, max (succ u4) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u4 u3, max (max u4 u3) u2} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u4 u3, max (max u4 u3) u2} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u4 u3} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u4, u3, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u4, u3, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u4, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} ι ι') e) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) x))
+  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) x) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u2, max (succ u4) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u4 u3, max (max u4 u3) u2} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u4 u3, max (max u4 u3) u2} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u4 u3} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u4, u3, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u4, u3, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u4, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} ι ι') e) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) x))
 Case conversion may be inaccurate. Consider using '#align basis.repr_reindex Basis.repr_reindexₓ'. -/
 @[simp]
 theorem repr_reindex : (b.reindex e).repr x = (b.repr x).mapDomain e :=
@@ -1102,7 +1102,7 @@ protected def equiv : M ≃ₗ[R] M' :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{succ u5} M' (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b' (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e i))
 but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u4, succ u1} ι ι'), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equiv.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι ι') e i))
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u4, succ u1} ι ι'), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equiv.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι ι') e i))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_apply Basis.equiv_applyₓ'. -/
 @[simp]
 theorem equiv_apply : b.Equiv b' e (b i) = b' (e i) := by simp [Basis.equiv]
@@ -2634,7 +2634,7 @@ theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i
 lean 3 declaration is
   forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (m : coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (i : ι), Eq.{succ u4} S (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (fun (_x : RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) => R -> S) (RingHom.hasCoeToFun.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (algebraMap.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Basis.repr.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Basis.restrictScalars.{u1, u2, u3, u4} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (coeFn.{max (succ u1) (succ u4), max (succ u1) (succ u4)} (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (fun (_x : Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) => ι -> S) (Finsupp.coeFun.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (coeFn.{max (succ u3) (succ (max u1 u4)), max (succ u3) (succ (max u1 u4))} (LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (fun (_x : LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) => M -> (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (LinearEquiv.hasCoeToFun.{u4, u4, u3, max u1 u4} S S M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Basis.repr.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6 b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))))) m)) i)
 but is expected to have type
-  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (a : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) a) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (a : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) a) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (_x : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) m)) i)
+  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (a : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) a) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (a : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) a) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (_x : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) m)) i)
 Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_applyₓ'. -/
 @[simp]
 theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
@@ -2655,7 +2655,7 @@ theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (m : M), Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) m (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (forall (i : ι), Membership.Mem.{u4, u4} S (Set.{u4} S) (Set.hasMem.{u4} S) (coeFn.{max (succ u1) (succ u4), max (succ u1) (succ u4)} (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (fun (_x : Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) => ι -> S) (Finsupp.coeFun.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (coeFn.{max (succ u3) (succ (max u1 u4)), max (succ u3) (succ (max u1 u4))} (LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (fun (_x : LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) => M -> (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (LinearEquiv.hasCoeToFun.{u4, u4, u3, max u1 u4} S S M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Basis.repr.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6 b) m) i) (Set.range.{u4, succ u2} S R (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (fun (_x : RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) => R -> S) (RingHom.hasCoeToFun.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (algebraMap.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))
 but is expected to have type
-  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : M), Iff (Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) m (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (forall (i : ι), Membership.mem.{u1, u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) i) (Set.{u1} S) (Set.instMembershipSet.{u1} S) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) m) i) (Set.range.{u1, succ u3} S R (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5))))
+  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : M), Iff (Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) m (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (forall (i : ι), Membership.mem.{u1, u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) i) (Set.{u1} S) (Set.instMembershipSet.{u1} S) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) m) i) (Set.range.{u1, succ u3} S R (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_span_iff_repr_mem Basis.mem_span_iff_repr_memₓ'. -/
 /-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
 coordinates of `m` on the basis `b` are in `R` (see `basis.mem_span` for the case `R = S`). -/
Diff
@@ -221,7 +221,7 @@ theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) v) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_apply Basis.repr_symm_applyₓ'. -/
 @[simp]
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
@@ -248,7 +248,7 @@ theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)) v
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
 Case conversion may be inaccurate. Consider using '#align basis.repr_total Basis.repr_totalₓ'. -/
 @[simp]
 theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
@@ -261,7 +261,7 @@ theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
 Case conversion may be inaccurate. Consider using '#align basis.total_repr Basis.total_reprₓ'. -/
 @[simp]
 theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
@@ -274,7 +274,7 @@ theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ (max u1 u2)} (Submodule.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.range.{u2, u2, u3, max u1 u2, max u3 u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.semilinearMapClass.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.supported.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) (Set.univ.{u1} ι))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (Submodule.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.range.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.supported.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) (Set.univ.{u3} ι))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (Submodule.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.range.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.semilinearMapClass.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.supported.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) (Set.univ.{u3} ι))
 Case conversion may be inaccurate. Consider using '#align basis.repr_range Basis.repr_rangeₓ'. -/
 theorem repr_range : (b.repr : M →ₗ[R] ι →₀ R).range = Finsupp.supported R R univ := by
   rw [LinearEquiv.range, Finsupp.supported_univ]
@@ -325,7 +325,7 @@ def coord : M →ₗ[R] R :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) (Eq.{succ u3} M x (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) x) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) x) 0 (Zero.toOfNat0.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) x) (MonoidWithZero.toZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) x) (Semiring.toMonoidWithZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) x) _inst_1))))) (Eq.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) x) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) x) 0 (Zero.toOfNat0.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) x) (MonoidWithZero.toZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) x) (Semiring.toMonoidWithZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) x) _inst_1))))) (Eq.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)))))
 Case conversion may be inaccurate. Consider using '#align basis.forall_coord_eq_zero_iff Basis.forall_coord_eq_zero_iffₓ'. -/
 theorem forall_coord_eq_zero_iff {x : M} : (∀ i, b.Coord i x = 0) ↔ x = 0 :=
   Iff.trans (by simp only [b.coord_apply, Finsupp.ext_iff, Finsupp.zero_apply])
@@ -343,7 +343,7 @@ noncomputable def sumCoords : M →ₗ[R] R :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u2, u2} ι R R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u2} R))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u3, u3} ι R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u3} R))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u3, u3} ι R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u3} R))
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords Basis.coe_sumCoordsₓ'. -/
 @[simp]
 theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i => id :=
@@ -354,7 +354,7 @@ theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u2, succ u1} R ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) m))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u3, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) m) ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) m) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) m) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) m) _inst_1))) (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) m))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u3, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) m) ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) m) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) m) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) m) _inst_1))) (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) m))
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords_eq_finsum Basis.coe_sumCoords_eq_finsumₓ'. -/
 theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b.Coord i m :=
   by
@@ -369,7 +369,7 @@ theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι], Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finset.sum.{max u3 u2, u1} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) ι (Pi.addCommMonoid.{u3, u2} M (fun (ᾰ : M) => R) (fun (i : M) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i)))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u3} ι], Eq.{max (succ u2) (succ u1)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) a) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.sum.{max u2 u1, u3} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) ι (LinearMap.addCommMonoid.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i)))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u3} ι], Eq.{max (succ u2) (succ u1)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) a) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.sum.{max u2 u1, u3} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) ι (LinearMap.addCommMonoid.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords_of_fintype Basis.coe_sumCoords_of_fintypeₓ'. -/
 @[simp]
 theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i, b.Coord i :=
@@ -383,7 +383,7 @@ theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i,
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) _inst_1)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) _inst_1)))
 Case conversion may be inaccurate. Consider using '#align basis.sum_coords_self_apply Basis.sumCoords_self_applyₓ'. -/
 @[simp]
 theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
@@ -395,7 +395,7 @@ theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.Dvd.{u2} R (semigroupDvd.{u2} R (SemigroupWithZero.toSemigroup.{u2} R (NonUnitalSemiring.toSemigroupWithZero.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1)))) r (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) r m))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.dvd.{u3} R (semigroupDvd.{u3} R (SemigroupWithZero.toSemigroup.{u3} R (NonUnitalSemiring.toSemigroupWithZero.{u3} R (Semiring.toNonUnitalSemiring.{u3} R _inst_1)))) r (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) r m))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.dvd.{u3} R (semigroupDvd.{u3} R (SemigroupWithZero.toSemigroup.{u3} R (NonUnitalSemiring.toSemigroupWithZero.{u3} R (Semiring.toNonUnitalSemiring.{u3} R _inst_1)))) r (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) r m))
 Case conversion may be inaccurate. Consider using '#align basis.dvd_coord_smul Basis.dvd_coord_smulₓ'. -/
 theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
   ⟨b.Coord i m, by simp⟩
@@ -405,7 +405,7 @@ theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) f i)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) f i)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_repr_symm Basis.coord_repr_symmₓ'. -/
 theorem coord_repr_symm (b : Basis ι R M) (i : ι) (f : ι →₀ R) : b.Coord i (b.repr.symm f) = f i :=
   by simp only [repr_symm_apply, coord_apply, repr_total]
@@ -425,7 +425,7 @@ variable {M₁ : Type _} [AddCommMonoid M₁] [Module R₁ M₁]
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u2, u4} R R₁ (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u5}} [_inst_9 : AddCommMonoid.{u5} M₁] [_inst_10 : Module.{u4, u5} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u5} M₁ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 Case conversion may be inaccurate. Consider using '#align basis.ext Basis.extₓ'. -/
 /-- Two linear maps are equal if they are equal on basis vectors. -/
 theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
@@ -477,7 +477,7 @@ alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff Basis.repr_eq_iffₓ'. -/
 theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
     ↑b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
@@ -1020,7 +1020,7 @@ theorem constr_def (f : ι → M') :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u1, u2, u4} ι R M' (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) a (f b)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply Basis.constr_applyₓ'. -/
 theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum fun b a => a • f b :=
   by
@@ -1032,7 +1032,7 @@ theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum f
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (f i)
 but is expected to have type
-  forall {ι : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), max (succ u4) (succ u5), max (succ u2) (succ u5)} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u4 u5} S (ι -> M') (AddMonoid.toZero.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u4 u5, max u2 u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u4, u3, u2, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (f i)
+  forall {ι : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), max (succ u4) (succ u5), max (succ u2) (succ u5)} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u4 u5} S (ι -> M') (AddMonoid.toZero.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u4 u5, max u2 u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u4, u3, u2, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.constr_basis Basis.constr_basisₓ'. -/
 @[simp]
 theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i) = f i := by
@@ -1043,7 +1043,7 @@ theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u4} M' (g i) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u3} M' (g i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) g) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u3} M' (g i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) g) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
 Case conversion may be inaccurate. Consider using '#align basis.constr_eq Basis.constr_eqₓ'. -/
 theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)) : b.constr S g = f :=
   b.ext fun i => (b.constr_basis S g i).trans (h i)
@@ -1053,7 +1053,7 @@ theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) f
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) f
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) f
 Case conversion may be inaccurate. Consider using '#align basis.constr_self Basis.constr_selfₓ'. -/
 theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
   b.constr_eq S fun x => rfl
@@ -1063,7 +1063,7 @@ theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u1} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u2, u2, u3, u4, max u3 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u2, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u1} M' ι f))
 but is expected to have type
-  forall {ι : Type.{u5}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u5, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u5} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u3, u3, u2, u4, max u2 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (LinearMap.instSemilinearMapClassLinearMap.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomSurjective.ids.{u3} R _inst_1) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u4), max (succ u5) (succ u4), max (succ u2) (succ u4)} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u5 u4} S (ι -> M') (AddMonoid.toZero.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u5 u4, max u2 u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u5, u3, u2, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u3, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u5} M' ι f))
+  forall {ι : Type.{u5}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u5, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u5} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u3, u3, u2, u4, max u2 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (LinearMap.semilinearMapClass.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomSurjective.ids.{u3} R _inst_1) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u4), max (succ u5) (succ u4), max (succ u2) (succ u4)} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u5 u4} S (ι -> M') (AddMonoid.toZero.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u5 u4, max u2 u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u5, u3, u2, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u3, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u5} M' ι f))
 Case conversion may be inaccurate. Consider using '#align basis.constr_range Basis.constr_rangeₓ'. -/
 theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span R (range f) := by
   rw [b.constr_def S f, LinearMap.range_comp, LinearMap.range_comp, LinearEquiv.range, ←
@@ -1075,7 +1075,7 @@ theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u1, succ u4, succ u4} ι M' M' (coeFn.{succ u4, succ u4} (LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (fun (_x : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) => M' -> M') (LinearMap.hasCoeToFun.{u2, u2, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f) v)) (LinearMap.comp.{u2, u2, u2, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u5, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u4} R S M' (SMulZeroClass.toSMul.{u5, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u4} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u4} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u5, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (a : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (LinearMap.comp.{u5, u5, u5, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHomCompTriple.ids.{u5, u5} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u5, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u4} R S M' (SMulZeroClass.toSMul.{u5, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u4} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u4} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u5, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (a : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M') => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M') => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (LinearMap.comp.{u5, u5, u5, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHomCompTriple.ids.{u5, u5} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
 Case conversion may be inaccurate. Consider using '#align basis.constr_comp Basis.constr_compₓ'. -/
 @[simp]
 theorem constr_comp (f : M' →ₗ[R] M') (v : ι → M') : b.constr S (f ∘ v) = f.comp (b.constr S v) :=
@@ -1259,7 +1259,7 @@ theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u1, u2} ι ι'), Eq.{max (succ u4) (succ u5)} (Prod.{u4, u5} M M') (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u1, u2, max (succ u4) (succ u5)} ι ι' (Prod.{u4, u5} M M') (Function.comp.{succ u1, succ u4, max (succ u4) (succ u5)} ι M (Prod.{u4, u5} M M') (coeFn.{max (succ u4) (succ (max u4 u5)), max (succ u4) (succ (max u4 u5))} (LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u4, max u4 u5} R R M (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inl.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b)) (Function.comp.{succ u2, succ u5, max (succ u4) (succ u5)} ι' M' (Prod.{u4, u5} M M') (coeFn.{max (succ u5) (succ (max u4 u5)), max (succ u5) (succ (max u4 u5))} (LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M' -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u5, max u4 u5} R R M' (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inr.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b')) i)
 but is expected to have type
-  forall {ι : Type.{u5}} {ι' : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u1, u2} R M' _inst_1 _inst_4] (b : Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u5, u4} ι ι'), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') i) (FunLike.coe.{max (max (max (max (succ u5) (succ u4)) (succ u1)) (succ u3)) (succ u2), max (succ u5) (succ u4), max (succ u3) (succ u2)} (Basis.{max u4 u5, u1, max u2 u3} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u5, u4} ι ι') (fun (_x : Sum.{u5, u4} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') _x) (Basis.funLike.{max u5 u4, u1, max u3 u2} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u5, u4, u1, u3, u2} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u5, u4, max (succ u3) (succ u2)} ι ι' (Prod.{u3, u2} M M') (Function.comp.{succ u5, succ u3, max (succ u3) (succ u2)} ι M (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u3, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (Prod.{u3, u2} M M') _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u3, max u3 u2} R R M (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inl.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u5) (succ u1)) (succ u3), succ u5, succ u3} (Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (Function.comp.{succ u4, succ u2, max (succ u3) (succ u2)} ι' M' (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u2, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M' (Prod.{u3, u2} M M') _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, max u3 u2} R R M' (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inr.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u2), succ u4, succ u2} (Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) b')) i)
+  forall {ι : Type.{u5}} {ι' : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u1, u2} R M' _inst_1 _inst_4] (b : Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u5, u4} ι ι'), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') i) (FunLike.coe.{max (max (max (max (succ u5) (succ u4)) (succ u1)) (succ u3)) (succ u2), max (succ u5) (succ u4), max (succ u3) (succ u2)} (Basis.{max u4 u5, u1, max u2 u3} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u5, u4} ι ι') (fun (_x : Sum.{u5, u4} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') _x) (Basis.funLike.{max u5 u4, u1, max u3 u2} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u5, u4, u1, u3, u2} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u5, u4, max (succ u3) (succ u2)} ι ι' (Prod.{u3, u2} M M') (Function.comp.{succ u5, succ u3, max (succ u3) (succ u2)} ι M (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u3, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (Prod.{u3, u2} M M') _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u3, max u3 u2} R R M (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inl.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u5) (succ u1)) (succ u3), succ u5, succ u3} (Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (Function.comp.{succ u4, succ u2, max (succ u3) (succ u2)} ι' M' (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u2, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M' (Prod.{u3, u2} M M') _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M') => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, max u3 u2} R R M' (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inr.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u2), succ u4, succ u2} (Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) b')) i)
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply Basis.prod_applyₓ'. -/
 @[simp]
 theorem prod_apply (i) :
@@ -1611,7 +1611,7 @@ variable [SMulCommClass R S M']
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_7 : Semiring.{u5} S] [_inst_8 : Module.{u5, u4} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_7)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_7) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u4, u1} M' ι _inst_4 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
@@ -1638,7 +1638,7 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
@@ -1806,7 +1806,7 @@ protected noncomputable def mk : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
@@ -1840,7 +1840,7 @@ variable {hli hsp}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (Ring.toSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) _inst_1))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v i)) (Ring.toSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v i)) _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_eq Basis.mk_coord_apply_eqₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 1 on the `i`th element of the
 basis. -/
@@ -1852,7 +1852,7 @@ theorem mk_coord_apply_eq (i : ι) : (Basis.mk hli hsp).Coord i (v i) = 1 :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} {i : ι} {j : ι}, (Ne.{succ u1} ι j i) -> (Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} {i : ι} {j : ι}, (Ne.{succ u3} ι j i) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1))))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} {i : ι} {j : ι}, (Ne.{succ u3} ι j i) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_ne Basis.mk_coord_apply_neₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 0 on the `j`th element of the
 basis if `j ≠ i`. -/
@@ -1865,7 +1865,7 @@ theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} [_inst_10 : DecidableEq.{succ u1} ι] {i : ι} {j : ι}, Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} R (Eq.{succ u1} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1))))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => R) (v j)) _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply Basis.mk_coord_applyₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to the Kronecker delta on the
 `j`th element of the basis. -/
@@ -2115,7 +2115,7 @@ noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (yO : Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hNO : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toHasLe.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (Submodule.ofLe.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N O hNO)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLeₓ'. -/
 @[simp]
 theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
@@ -2477,7 +2477,7 @@ variable {K V}
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} {V' : Type.{u3}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_3 : AddCommGroup.{u3} V'] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_5 : Module.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3)] (f : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (LinearMap.ker.{u2, u2, u1, u3, max u1 u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u1, u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f) (Bot.bot.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasBot.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) => Eq.{succ u1} (LinearMap.{u2, u2, u1, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 _inst_4) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} K K K V V' V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 _inst_5 _inst_4 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomCompTriple.right_ids.{u2, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) g f) (LinearMap.id.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))
 but is expected to have type
-  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (LinearMap.ker.{u2, u2, u3, u1, max u3 u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u3, u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) f) (Bot.bot.{u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (Submodule.instBotSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) => Eq.{succ u3} (LinearMap.{u2, u2, u3, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 _inst_4) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} K K K V V' V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 _inst_5 _inst_4 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) g f) (LinearMap.id.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)))
+  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (LinearMap.ker.{u2, u2, u3, u1, max u3 u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u3, u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) f) (Bot.bot.{u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (Submodule.instBotSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) => Eq.{succ u3} (LinearMap.{u2, u2, u3, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 _inst_4) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} K K K V V' V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 _inst_5 _inst_4 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) g f) (LinearMap.id.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)))
 Case conversion may be inaccurate. Consider using '#align linear_map.exists_left_inverse_of_injective LinearMap.exists_leftInverse_of_injectiveₓ'. -/
 theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj : f.ker = ⊥) :
     ∃ g : V' →ₗ[K] V, g.comp f = LinearMap.id :=
@@ -2526,7 +2526,7 @@ instance Module.Submodule.complementedLattice : ComplementedLattice (Submodule K
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} {V' : Type.{u3}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_3 : AddCommGroup.{u3} V'] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_5 : Module.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3)] (f : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u3} (Submodule.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5) (LinearMap.range.{u2, u2, u1, u3, max u1 u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u1, u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) (RingHomSurjective.ids.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) f) (Top.top.{u3} (Submodule.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5) (Submodule.hasTop.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) => Eq.{succ u3} (LinearMap.{u2, u2, u3, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V' (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5 _inst_5) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} K K K V' V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5 _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomCompTriple.right_ids.{u2, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f g) (LinearMap.id.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5)))
 but is expected to have type
-  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u1} (Submodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5) (LinearMap.range.{u2, u2, u3, u1, max u3 u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u3, u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) (RingHomSurjective.ids.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))) f) (Top.top.{u1} (Submodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5) (Submodule.instTopSubmodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) => Eq.{succ u1} (LinearMap.{u2, u2, u1, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V' (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5 _inst_5) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} K K K V' V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5 _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) f g) (LinearMap.id.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5)))
+  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u1} (Submodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5) (LinearMap.range.{u2, u2, u3, u1, max u3 u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u3, u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) (RingHomSurjective.ids.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))) f) (Top.top.{u1} (Submodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5) (Submodule.instTopSubmodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) => Eq.{succ u1} (LinearMap.{u2, u2, u1, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V' (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5 _inst_5) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} K K K V' V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5 _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) f g) (LinearMap.id.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5)))
 Case conversion may be inaccurate. Consider using '#align linear_map.exists_right_inverse_of_surjective LinearMap.exists_rightInverse_of_surjectiveₓ'. -/
 theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_surj : f.range = ⊤) :
     ∃ g : V' →ₗ[K] V, f.comp g = LinearMap.id :=
@@ -2560,7 +2560,7 @@ open Submodule LinearMap
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), (LT.lt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (Top.top.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasTop.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) -> (Exists.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (fun (f : LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) => Exists.{0} (Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) (fun (H : Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) => LE.le.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toHasLe.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (LinearMap.ker.{u2, u2, u1, u2, max u1 u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.semilinearMapClass.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f))))
 but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), (LT.lt.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLT.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (Top.top.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.instTopSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) -> (Exists.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (fun (f : LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) => And (Ne.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) f (OfNat.ofNat.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) 0 (Zero.toOfNat0.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instZeroLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))))))) (LE.le.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (LinearMap.ker.{u1, u1, u2, u1, max u2 u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instSemilinearMapClassLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))))) f))))
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), (LT.lt.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLT.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (Top.top.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.instTopSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) -> (Exists.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (fun (f : LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) => And (Ne.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) f (OfNat.ofNat.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) 0 (Zero.toOfNat0.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instZeroLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))))))) (LE.le.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (LinearMap.ker.{u1, u1, u2, u1, max u2 u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.semilinearMapClass.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))))) f))))
 Case conversion may be inaccurate. Consider using '#align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_topₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
Diff
@@ -2560,7 +2560,7 @@ open Submodule LinearMap
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), (LT.lt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (Top.top.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasTop.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) -> (Exists.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (fun (f : LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) => Exists.{0} (Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) (fun (H : Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) => LE.le.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toHasLe.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (LinearMap.ker.{u2, u2, u1, u2, max u1 u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.semilinearMapClass.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f))))
 but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), (LT.lt.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLT.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (Top.top.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.instTopSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) -> (Exists.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (fun (f : LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) => And (Ne.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) f (OfNat.ofNat.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) 0 (Zero.toOfNat0.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instZeroLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))))))) (LE.le.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (LinearMap.ker.{u1, u1, u2, u1, max u2 u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instSemilinearMapClassLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))))) f))))
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), (LT.lt.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLT.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (Top.top.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.instTopSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) -> (Exists.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (fun (f : LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) => And (Ne.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) f (OfNat.ofNat.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) 0 (Zero.toOfNat0.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instZeroLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))))))) (LE.le.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (LinearMap.ker.{u1, u1, u2, u1, max u2 u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instSemilinearMapClassLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonAssocRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonAssocRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))))) f))))
 Case conversion may be inaccurate. Consider using '#align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_topₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
Diff
@@ -1786,7 +1786,7 @@ variable (hli : LinearIndependent R v) (hsp : ⊤ ≤ span R (range v))
 
 /- warning: basis.mk -> Basis.mk is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
 but is expected to have type
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
 Case conversion may be inaccurate. Consider using '#align basis.mk Basis.mkₓ'. -/
@@ -1804,7 +1804,7 @@ protected noncomputable def mk : Basis ι R M :=
 
 /- warning: basis.mk_repr -> Basis.mk_repr is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
 but is expected to have type
   forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
@@ -1815,7 +1815,7 @@ theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_t
 
 /- warning: basis.mk_apply -> Basis.mk_apply is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)
 but is expected to have type
   forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u2, u1, u3} ι R M v (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (Top.top.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u2} M ι v))) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Basis.mk.{u2, u1, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)
 Case conversion may be inaccurate. Consider using '#align basis.mk_apply Basis.mk_applyₓ'. -/
@@ -1825,7 +1825,7 @@ theorem mk_apply (i : ι) : Basis.mk hli hsp i = v i :=
 
 /- warning: basis.coe_mk -> Basis.coe_mk is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) v
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) v
 but is expected to have type
   forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] (hli : LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (hsp : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.mk.{u3, u1, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) v
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk Basis.coe_mkₓ'. -/
@@ -1838,7 +1838,7 @@ variable {hli hsp}
 
 /- warning: basis.mk_coord_apply_eq -> Basis.mk_coord_apply_eq is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))))
 but is expected to have type
   forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (Ring.toSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_eq Basis.mk_coord_apply_eqₓ'. -/
@@ -1850,7 +1850,7 @@ theorem mk_coord_apply_eq (i : ι) : (Basis.mk hli hsp).Coord i (v i) = 1 :=
 
 /- warning: basis.mk_coord_apply_ne -> Basis.mk_coord_apply_ne is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} {i : ι} {j : ι}, (Ne.{succ u1} ι j i) -> (Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} {i : ι} {j : ι}, (Ne.{succ u1} ι j i) -> (Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
 but is expected to have type
   forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} {i : ι} {j : ι}, (Ne.{succ u3} ι j i) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_ne Basis.mk_coord_apply_neₓ'. -/
@@ -1863,7 +1863,7 @@ theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i
 
 /- warning: basis.mk_coord_apply -> Basis.mk_coord_apply is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} [_inst_10 : DecidableEq.{succ u1} ι] {i : ι} {j : ι}, Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} R (Eq.{succ u1} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} [_inst_10 : DecidableEq.{succ u1} ι] {i : ι} {j : ι}, Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} R (Eq.{succ u1} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
 but is expected to have type
   forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply Basis.mk_coord_applyₓ'. -/
@@ -2097,7 +2097,7 @@ theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R
 
 /- warning: basis.mk_fin_cons_of_le -> Basis.mkFinConsOfLe is a dubious translation:
 lean 3 declaration is
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) -> (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) -> (forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) -> (forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) -> (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toHasLe.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) -> (forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) -> (forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))
 but is expected to have type
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) -> (Basis.{0, u1, u2} (Fin n) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) N O) -> (forall (c : R) (x : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3)))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))))) -> (forall (z : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y)) N))) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))
 Case conversion may be inaccurate. Consider using '#align basis.mk_fin_cons_of_le Basis.mkFinConsOfLeₓ'. -/
@@ -2113,7 +2113,7 @@ noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y
 
 /- warning: basis.coe_mk_fin_cons_of_le -> Basis.coe_mkFinConsOfLe is a dubious translation:
 lean 3 declaration is
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (yO : Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hNO : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (Submodule.ofLe.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N O hNO)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (yO : Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hNO : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toHasLe.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (Submodule.ofLe.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N O hNO)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
 but is expected to have type
   forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLeₓ'. -/
@@ -2185,7 +2185,7 @@ variable [AddCommGroup M] [Module R M] {b : ι → M}
 
 /- warning: submodule.induction_on_rank_aux -> Submodule.inductionOnRankAux is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_2 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_1)] [_inst_3 : AddCommGroup.{u3} M] [_inst_4 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (forall (P : (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> Sort.{u4}), (forall (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall (N' : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)))) N' N) -> (forall (x : M), (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N) -> (forall (c : R) (y : M), (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) y N') -> (Eq.{succ u3} M (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))))) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)))) c x) y) (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))) -> (P N'))) -> (P N)) -> (forall (n : Nat) (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall {m : Nat} (v : (Fin m) -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N)), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N)))))) v) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (LE.le.{0} Nat Nat.hasLe m n)) -> (P N)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_2 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_1)] [_inst_3 : AddCommGroup.{u3} M] [_inst_4 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (forall (P : (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> Sort.{u4}), (forall (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall (N' : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Preorder.toHasLe.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)))) N' N) -> (forall (x : M), (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N) -> (forall (c : R) (y : M), (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) y N') -> (Eq.{succ u3} M (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))))) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)))) c x) y) (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))) -> (P N'))) -> (P N)) -> (forall (n : Nat) (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall {m : Nat} (v : (Fin m) -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N)), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N)))))) v) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (LE.le.{0} Nat Nat.hasLe m n)) -> (P N)))
 but is expected to have type
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_2 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_1)] [_inst_3 : AddCommGroup.{u3} M] [_inst_4 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (forall (P : (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> Sort.{u4}), (forall (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall (N' : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Submodule.completeLattice.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4))))) N' N) -> (forall (x : M), (Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N) -> (forall (c : R) (y : M), (Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) y N') -> (Eq.{succ u3} M (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))))) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4))))) c x) y) (OfNat.ofNat.{u3} M 0 (Zero.toOfNat0.{u3} M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) -> (P N'))) -> (P N)) -> (forall (n : Nat) (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall {m : Nat} (v : (Fin m) -> (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N))), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N)) M (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (SetLike.coe.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) N))) v) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (LE.le.{0} Nat instLENat m n)) -> (P N)))
 Case conversion may be inaccurate. Consider using '#align submodule.induction_on_rank_aux Submodule.inductionOnRankAuxₓ'. -/
@@ -2558,7 +2558,7 @@ open Submodule LinearMap
 
 /- warning: submodule.exists_le_ker_of_lt_top -> Submodule.exists_le_ker_of_lt_top is a dubious translation:
 lean 3 declaration is
-  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), (LT.lt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toLT.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (Top.top.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasTop.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) -> (Exists.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (fun (f : LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) => Exists.{0} (Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) (fun (H : Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) => LE.le.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toLE.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (LinearMap.ker.{u2, u2, u1, u2, max u1 u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.semilinearMapClass.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f))))
+  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), (LT.lt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (Top.top.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasTop.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) -> (Exists.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (fun (f : LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) => Exists.{0} (Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) (fun (H : Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) => LE.le.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toHasLe.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (LinearMap.ker.{u2, u2, u1, u2, max u1 u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.semilinearMapClass.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f))))
 but is expected to have type
   forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), (LT.lt.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLT.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (Top.top.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.instTopSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) -> (Exists.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (fun (f : LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) => And (Ne.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) f (OfNat.ofNat.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) 0 (Zero.toOfNat0.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instZeroLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))))))) (LE.le.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (LinearMap.ker.{u1, u1, u2, u1, max u2 u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instSemilinearMapClassLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))))) f))))
 Case conversion may be inaccurate. Consider using '#align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_topₓ'. -/
Diff
@@ -1470,7 +1470,7 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (x i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_symm_apply Basis.equivFun_symm_applyₓ'. -/
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
@@ -1483,7 +1483,7 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
@@ -1494,7 +1494,7 @@ theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u4, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.equivFun.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u2, u2, u2, u4, u3, max u1 u2} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.symm.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) f) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
+  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 Case conversion may be inaccurate. Consider using '#align basis.map_equiv_fun Basis.map_equivFunₓ'. -/
 @[simp]
 theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
@@ -1505,7 +1505,7 @@ theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.tr
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
 Case conversion may be inaccurate. Consider using '#align basis.sum_equiv_fun Basis.sum_equivFunₓ'. -/
 theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
   by
@@ -1527,7 +1527,7 @@ theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u1} ι] (i : ι) (j : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_self Basis.equivFun_selfₓ'. -/
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
@@ -1565,7 +1565,7 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
 Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
@@ -1577,7 +1577,7 @@ theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u1, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u1 u2} (ι -> R) 0 (OfNat.mk.{max u1 u2} (ι -> R) 0 (Zero.zero.{max u1 u2} (ι -> R) (Pi.instZero.{u1, u2} ι (fun (a : ι) => R) (fun (i : ι) => MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_equiv_fun Basis.coe_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
@@ -1611,7 +1611,7 @@ variable [SMulCommClass R S M']
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_7 : Semiring.{u5} S] [_inst_8 : Module.{u5, u4} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_7)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_7) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u4, u1} M' ι _inst_4 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
@@ -1638,7 +1638,7 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
@@ -1923,7 +1923,7 @@ end Span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15546 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15532 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15516 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15502 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
@@ -1957,7 +1957,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15966 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15936 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
@@ -1969,7 +1969,7 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16077 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16063 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16042 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16028 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
Diff
@@ -2463,7 +2463,7 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
 
 /-- The lattice of submodules of a module over a division ring is atomistic. -/
 instance : IsAtomistic (Submodule K V)
-    where eq_supₛ_atoms := by
+    where eq_sSup_atoms := by
     intro W
     use { T : Submodule K V | ∃ (v : V)(hv : v ∈ W)(hz : v ≠ 0), T = span K {v} }
     refine' ⟨submodule_eq_Sup_le_nonzero_spans W, _⟩
Diff
@@ -1806,7 +1806,7 @@ protected noncomputable def mk : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
@@ -1840,7 +1840,7 @@ variable {hli hsp}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (NonAssocRing.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (Ring.toNonAssocRing.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) _inst_1))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (Ring.toSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_eq Basis.mk_coord_apply_eqₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 1 on the `i`th element of the
 basis. -/
@@ -1865,7 +1865,7 @@ theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} [_inst_10 : DecidableEq.{succ u1} ι] {i : ι} {j : ι}, Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} R (Eq.{succ u1} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1))))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply Basis.mk_coord_applyₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to the Kronecker delta on the
 `j`th element of the basis. -/
@@ -2003,7 +2003,7 @@ theorem unitsSMul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_s
 lean 3 declaration is
   forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (i : ι), Eq.{max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSMul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (SMul.smul.{u2, max u3 u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.hasSmul.{u2, u2, u2, u3, u2} R₂ R₂ (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (DivInvMonoid.toMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Group.toDivInvMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.group.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.distribMulAction.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toAddCommGroup.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.smulCommClass_right.{u2, u2, u2} R₂ R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (SMulZeroClass.toHasSmul.{u2, u2} R₂ R₂ (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (SMulWithZero.toSmulZeroClass.{u2, u2} R₂ R₂ (MulZeroClass.toHasZero.{u2} R₂ (MulZeroOneClass.toMulZeroClass.{u2} R₂ (MonoidWithZero.toMulZeroOneClass.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (MulActionWithZero.toSMulWithZero.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Module.toMulActionWithZero.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (Monoid.toMulAction.{u2} R₂ (CommMonoid.toMonoid.{u2} R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2)))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
 Case conversion may be inaccurate. Consider using '#align basis.coord_units_smul Basis.coord_unitsSMulₓ'. -/
 @[simp]
 theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
@@ -2025,7 +2025,7 @@ theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (v : M) (i : ι), Eq.{succ u2} R₂ (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSMul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (SMul.smul.{u2, u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) R₂ (Units.hasSmul.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e) v) i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (CommSemiring.toSemiring.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_units_smul Basis.repr_unitsSMulₓ'. -/
 @[simp]
 theorem repr_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
@@ -2611,7 +2611,7 @@ open Submodule
 lean 3 declaration is
   forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6), Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))
 but is expected to have type
-  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (Algebra.toSMul.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u4, u3} S M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u4, u3} S M (MonoidWithZero.toZero.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toZero.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Algebra.toSMul.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6), Basis.{u1, u2, u3} ι R (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b))))
+  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (Algebra.toSMul.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u4, u3} S M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u4, u3} S M (MonoidWithZero.toZero.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toZero.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Algebra.toSMul.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6), Basis.{u1, u2, u3} ι R (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b)))) (Submodule.module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b))))
 Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars Basis.restrictScalarsₓ'. -/
 /-- Let `b` be a `S`-basis of `M`. Let `R` be a comm_ring such that `algebra R S` with no zero
 smul divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
@@ -2623,7 +2623,7 @@ noncomputable def Basis.restrictScalars : Basis ι R (span R (Set.range b)) :=
 lean 3 declaration is
   forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (i : ι), Eq.{succ u3} M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))) (Basis.restrictScalars.{u1, u2, u3, u4} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b) i)) (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b i)
 but is expected to have type
-  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (i : ι), Eq.{succ u4} M (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) _x) (Basis.funLike.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b) i)) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b i)
+  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (i : ι), Eq.{succ u4} M (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) _x) (Basis.funLike.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b) i)) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b i)
 Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars_apply Basis.restrictScalars_applyₓ'. -/
 @[simp]
 theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i := by
@@ -2634,7 +2634,7 @@ theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i
 lean 3 declaration is
   forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (m : coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (i : ι), Eq.{succ u4} S (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (fun (_x : RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) => R -> S) (RingHom.hasCoeToFun.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (algebraMap.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Basis.repr.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Basis.restrictScalars.{u1, u2, u3, u4} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (coeFn.{max (succ u1) (succ u4), max (succ u1) (succ u4)} (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (fun (_x : Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) => ι -> S) (Finsupp.coeFun.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (coeFn.{max (succ u3) (succ (max u1 u4)), max (succ u3) (succ (max u1 u4))} (LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (fun (_x : LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) => M -> (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (LinearEquiv.hasCoeToFun.{u4, u4, u3, max u1 u4} S S M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Basis.repr.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6 b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))))) m)) i)
 but is expected to have type
-  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) ι (fun (a : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) a) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (a : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) a) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (_x : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) m)) i)
+  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (a : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) a) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (a : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) a) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (_x : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) m)) i)
 Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_applyₓ'. -/
 @[simp]
 theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
@@ -2655,7 +2655,7 @@ theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (m : M), Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) m (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (forall (i : ι), Membership.Mem.{u4, u4} S (Set.{u4} S) (Set.hasMem.{u4} S) (coeFn.{max (succ u1) (succ u4), max (succ u1) (succ u4)} (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (fun (_x : Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) => ι -> S) (Finsupp.coeFun.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (coeFn.{max (succ u3) (succ (max u1 u4)), max (succ u3) (succ (max u1 u4))} (LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (fun (_x : LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) => M -> (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (LinearEquiv.hasCoeToFun.{u4, u4, u3, max u1 u4} S S M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Basis.repr.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6 b) m) i) (Set.range.{u4, succ u2} S R (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (fun (_x : RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) => R -> S) (RingHom.hasCoeToFun.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (algebraMap.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))
 but is expected to have type
-  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : M), Iff (Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) m (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (forall (i : ι), Membership.mem.{u1, u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) i) (Set.{u1} S) (Set.instMembershipSet.{u1} S) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) m) i) (Set.range.{u1, succ u3} S R (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5))))
+  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : M), Iff (Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) m (Submodule.span.{u3, u4} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (forall (i : ι), Membership.mem.{u1, u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) i) (Set.{u1} S) (Set.instMembershipSet.{u1} S) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) m) i) (Set.range.{u1, succ u3} S R (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_span_iff_repr_mem Basis.mem_span_iff_repr_memₓ'. -/
 /-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
 coordinates of `m` on the basis `b` are in `R` (see `basis.mem_span` for the case `R = S`). -/
Diff
@@ -1923,7 +1923,7 @@ end Span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15552 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15538 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15546 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15532 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
@@ -1957,7 +1957,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15972 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15966 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
@@ -1969,7 +1969,7 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16083 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16069 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16077 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16063 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
Diff
@@ -2607,17 +2607,35 @@ variable (R)
 
 open Submodule
 
+/- warning: basis.restrict_scalars -> Basis.restrictScalars is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6), Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))
+but is expected to have type
+  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (Algebra.toSMul.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u4, u3} S M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u4, u3} S M (MonoidWithZero.toZero.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_4))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toZero.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Algebra.toSMul.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6), Basis.{u1, u2, u3} ι R (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) b))))
+Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars Basis.restrictScalarsₓ'. -/
 /-- Let `b` be a `S`-basis of `M`. Let `R` be a comm_ring such that `algebra R S` with no zero
 smul divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
 noncomputable def Basis.restrictScalars : Basis ι R (span R (Set.range b)) :=
   Basis.span (b.LinearIndependent.restrictScalars (smul_left_injective R one_ne_zero))
 #align basis.restrict_scalars Basis.restrictScalars
 
+/- warning: basis.restrict_scalars_apply -> Basis.restrictScalars_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (i : ι), Eq.{succ u3} M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b))))) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))) (Basis.restrictScalars.{u1, u2, u3, u4} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b) i)) (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b i)
+but is expected to have type
+  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (i : ι), Eq.{succ u4} M (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) _x) (Basis.funLike.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b) i)) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b i)
+Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars_apply Basis.restrictScalars_applyₓ'. -/
 @[simp]
 theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i := by
   simp only [Basis.restrictScalars, Basis.span_apply]
 #align basis.restrict_scalars_apply Basis.restrictScalars_apply
 
+/- warning: basis.restrict_scalars_repr_apply -> Basis.restrictScalars_repr_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (m : coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (i : ι), Eq.{succ u4} S (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (fun (_x : RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) => R -> S) (RingHom.hasCoeToFun.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (algebraMap.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Basis.repr.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (Basis.restrictScalars.{u1, u2, u3, u4} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (coeFn.{max (succ u1) (succ u4), max (succ u1) (succ u4)} (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (fun (_x : Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) => ι -> S) (Finsupp.coeFun.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (coeFn.{max (succ u3) (succ (max u1 u4)), max (succ u3) (succ (max u1 u4))} (LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (fun (_x : LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) => M -> (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (LinearEquiv.hasCoeToFun.{u4, u4, u3, max u1 u4} S S M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Basis.repr.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6 b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))))))) m)) i)
+but is expected to have type
+  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) ι (fun (a : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) a) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (a : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) a) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (fun (_x : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (SMulZeroClass.toSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toZero.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribSMul.toSMulZeroClass.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddMonoid.toAddZeroClass.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))) (DistribMulAction.toDistribSMul.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))))))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u4} (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))))) (Module.toDistribMulAction.{u3, u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Finsupp.module.{u2, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (Basis.repr.{u2, u3, u4} ι R (Subtype.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) x (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Submodule.addCommMonoid.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Submodule.module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (Basis.restrictScalars.{u2, u3, u4, u1} ι R M S _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 b)) m) i)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) (Subtype.val.{succ u4} M (fun (x : M) => Membership.mem.{u4, u4} M (Set.{u4} M) (Set.instMembershipSet.{u4} M) x (SetLike.coe.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b))))) m)) i)
+Case conversion may be inaccurate. Consider using '#align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_applyₓ'. -/
 @[simp]
 theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
     algebraMap R S ((b.restrictScalars R).repr m i) = b.repr m i :=
@@ -2633,6 +2651,12 @@ theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
     Basis.restrictScalars_apply, LinearMap.coe_restrictScalars]
 #align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_apply
 
+/- warning: basis.mem_span_iff_repr_mem -> Basis.mem_span_iff_repr_mem is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} (R : Type.{u2}) {M : Type.{u3}} {S : Type.{u4}} [_inst_1 : CommRing.{u2} R] [_inst_2 : Ring.{u4} S] [_inst_3 : Nontrivial.{u4} S] [_inst_4 : AddCommGroup.{u3} M] [_inst_5 : Algebra.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2)] [_inst_6 : Module.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_7 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)] [_inst_8 : IsScalarTower.{u2, u4, u3} R S M (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))) (SMulZeroClass.toHasSmul.{u4, u3} S M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u4, u3} S M (MulZeroClass.toHasZero.{u4} S (MulZeroOneClass.toMulZeroClass.{u4} S (MonoidWithZero.toMulZeroOneClass.{u4} S (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u4, u3} S M (Semiring.toMonoidWithZero.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u4, u3} S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_4)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} S (NonAssocRing.toNonUnitalNonAssocRing.{u4} S (Ring.toNonAssocRing.{u4} S _inst_2))))) (SMulZeroClass.toHasSmul.{u2, u4} R S (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u2, u4} R S (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u2, u4} R S (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddZeroClass.toHasZero.{u4} S (AddMonoid.toAddZeroClass.{u4} S (AddCommMonoid.toAddMonoid.{u4} S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (Module.toMulActionWithZero.{u2, u4} R S (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Algebra.toModule.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5)))))] (b : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (m : M), Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7)) m (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_7 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) (fun (_x : Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6)) b)))) (forall (i : ι), Membership.Mem.{u4, u4} S (Set.{u4} S) (Set.hasMem.{u4} S) (coeFn.{max (succ u1) (succ u4), max (succ u1) (succ u4)} (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (fun (_x : Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) => ι -> S) (Finsupp.coeFun.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (coeFn.{max (succ u3) (succ (max u1 u4)), max (succ u3) (succ (max u1 u4))} (LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (fun (_x : LinearEquiv.{u4, u4, u3, max u1 u4} S S (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) => M -> (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))))) (LinearEquiv.hasCoeToFun.{u4, u4, u3, max u1 u4} S S M (Finsupp.{u1, u4} ι S (MulZeroClass.toHasZero.{u4} S (NonUnitalNonAssocSemiring.toMulZeroClass.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))))) (Ring.toSemiring.{u4} S _inst_2) (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) (Finsupp.addCommMonoid.{u1, u4} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))))) _inst_6 (Finsupp.module.{u1, u4, u4} ι S S (Ring.toSemiring.{u4} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2)))) (Semiring.toModule.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHom.id.{u4} S (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2)) (RingHomInvPair.ids.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (Basis.repr.{u1, u4, u3} ι S M (Ring.toSemiring.{u4} S _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_4) _inst_6 b) m) i) (Set.range.{u4, succ u2} S R (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (fun (_x : RingHom.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) => R -> S) (RingHom.hasCoeToFun.{u2, u4} R S (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Semiring.toNonAssocSemiring.{u4} S (Ring.toSemiring.{u4} S _inst_2))) (algebraMap.{u2, u4} R S (CommRing.toCommSemiring.{u2} R _inst_1) (Ring.toSemiring.{u4} S _inst_2) _inst_5))))
+but is expected to have type
+  forall {ι : Type.{u2}} (R : Type.{u3}) {M : Type.{u4}} {S : Type.{u1}} [_inst_1 : CommRing.{u3} R] [_inst_2 : Ring.{u1} S] [_inst_3 : Nontrivial.{u1} S] [_inst_4 : AddCommGroup.{u4} M] [_inst_5 : Algebra.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2)] [_inst_6 : Module.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_7 : Module.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)] [_inst_8 : IsScalarTower.{u3, u1, u4} R S M (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5) (SMulZeroClass.toSMul.{u1, u4} S M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u1, u4} S M (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u1, u4} S M (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u3, u4} R M (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (SMulWithZero.toSMulZeroClass.{u3, u4} R M (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (MulActionWithZero.toSMulWithZero.{u3, u4} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (NegZeroClass.toZero.{u4} M (SubNegZeroMonoid.toNegZeroClass.{u4} M (SubtractionMonoid.toSubNegZeroMonoid.{u4} M (SubtractionCommMonoid.toSubtractionMonoid.{u4} M (AddCommGroup.toDivisionAddCommMonoid.{u4} M _inst_4))))) (Module.toMulActionWithZero.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7))))] [_inst_9 : NoZeroSMulDivisors.{u3, u1} R S (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (Algebra.toSMul.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5)] (b : Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (m : M), Iff (Membership.mem.{u4, u4} M (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) (SetLike.instMembership.{u4, u4} (Submodule.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7) M (Submodule.setLike.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7)) m (Submodule.span.{u3, u4} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_7 (Set.range.{u4, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u2, succ u4} (Basis.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) b)))) (forall (i : ι), Membership.mem.{u1, u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) i) (Set.{u1} S) (Set.instMembershipSet.{u1} S) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => S) _x) (Finsupp.funLike.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u1), succ u4, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SMulZeroClass.toSMul.{u1, u4} S M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribSMul.toSMulZeroClass.{u1, u4} S M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4))) (DistribMulAction.toDistribSMul.{u1, u4} S M (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6)))) (SMulZeroClass.toSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u1, u1, u4, max u2 u1} (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (AddCommMonoid.toAddMonoid.{u4} M (AddCommGroup.toAddCommMonoid.{u4} M _inst_4)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (Module.toDistribMulAction.{u1, u4} S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6) (Module.toDistribMulAction.{u1, max u2 u1} S (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (SemilinearMapClass.distribMulActionHomClass.{u1, u4, max u2 u1, max (max u2 u4) u1} S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u4, max u2 u1, max (max u2 u4) u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (LinearEquiv.{u1, u1, u4, max u1 u2} S S (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u4, max u2 u1} S S M (Finsupp.{u2, u1} ι S (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Ring.toSemiring.{u1} S _inst_2) (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) (Finsupp.addCommMonoid.{u2, u1} ι S (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))))) _inst_6 (Finsupp.module.{u2, u1, u1} ι S S (Ring.toSemiring.{u1} S _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (Semiring.toModule.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHomInvPair.ids.{u1} S (Ring.toSemiring.{u1} S _inst_2))))))) (Basis.repr.{u2, u1, u4} ι S M (Ring.toSemiring.{u1} S _inst_2) (AddCommGroup.toAddCommMonoid.{u4} M _inst_4) _inst_6 b) m) i) (Set.range.{u1, succ u3} S R (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => S) _x) (MulHomClass.toFunLike.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (NonUnitalNonAssocSemiring.toMul.{u1} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} S (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u1, u3, u1} (RingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2))) R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u1} R S (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (Semiring.toNonAssocSemiring.{u1} S (Ring.toSemiring.{u1} S _inst_2)))))) (algebraMap.{u3, u1} R S (CommRing.toCommSemiring.{u3} R _inst_1) (Ring.toSemiring.{u1} S _inst_2) _inst_5))))
+Case conversion may be inaccurate. Consider using '#align basis.mem_span_iff_repr_mem Basis.mem_span_iff_repr_memₓ'. -/
 /-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
 coordinates of `m` on the basis `b` are in `R` (see `basis.mem_span` for the case `R = S`). -/
 theorem Basis.mem_span_iff_repr_mem (m : M) :
Diff
@@ -1976,84 +1976,84 @@ theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range
   groupSmul_span_eq_top hv
 #align basis.units_smul_span_eq_top Basis.units_smul_span_eq_top
 
-/- warning: basis.units_smul -> Basis.unitsSmul is a dubious translation:
+/- warning: basis.units_smul -> Basis.unitsSMul is a dubious translation:
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
 but is expected to have type
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
-Case conversion may be inaccurate. Consider using '#align basis.units_smul Basis.unitsSmulₓ'. -/
+Case conversion may be inaccurate. Consider using '#align basis.units_smul Basis.unitsSMulₓ'. -/
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` is a unit, `smul_of_is_unit`
 provides the basis corresponding to `w • v`. -/
-def unitsSmul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
+def unitsSMul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
   @Basis.mk ι R M (w • v) _ _ _ (v.LinearIndependent.units_smul w)
     (units_smul_span_eq_top v.span_eq).ge
-#align basis.units_smul Basis.unitsSmul
+#align basis.units_smul Basis.unitsSMul
 
-/- warning: basis.units_smul_apply -> Basis.unitsSmul_apply is a dubious translation:
+/- warning: basis.units_smul_apply -> Basis.unitsSMul_apply is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.unitsSmul.{u1, u2, u3} ι R M _inst_1 _inst_3 _inst_6 v w) i) (SMul.smul.{u2, u3} (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) M (Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (w i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v i))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.unitsSMul.{u1, u2, u3} ι R M _inst_1 _inst_3 _inst_6 v w) i) (SMul.smul.{u2, u3} (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) M (Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (w i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))} (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.unitsSmul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v w) i) (HSMul.hSMul.{u2, u1, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Units.instSMulUnits.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3) _inst_6)))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
-Case conversion may be inaccurate. Consider using '#align basis.units_smul_apply Basis.unitsSmul_applyₓ'. -/
-theorem unitsSmul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_smul w i = w i • v i :=
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))} (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.unitsSMul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v w) i) (HSMul.hSMul.{u2, u1, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Units.instSMulUnits.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3) _inst_6)))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
+Case conversion may be inaccurate. Consider using '#align basis.units_smul_apply Basis.unitsSMul_applyₓ'. -/
+theorem unitsSMul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_smul w i = w i • v i :=
   mk_apply (v.LinearIndependent.units_smul w) (units_smul_span_eq_top v.span_eq).ge i
-#align basis.units_smul_apply Basis.unitsSmul_apply
+#align basis.units_smul_apply Basis.unitsSMul_apply
 
-/- warning: basis.coord_units_smul -> Basis.coord_unitsSmul is a dubious translation:
+/- warning: basis.coord_units_smul -> Basis.coord_unitsSMul is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (i : ι), Eq.{max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSmul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (SMul.smul.{u2, max u3 u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.hasSmul.{u2, u2, u2, u3, u2} R₂ R₂ (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (DivInvMonoid.toMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Group.toDivInvMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.group.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.distribMulAction.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toAddCommGroup.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.smulCommClass_right.{u2, u2, u2} R₂ R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (SMulZeroClass.toHasSmul.{u2, u2} R₂ R₂ (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (SMulWithZero.toSmulZeroClass.{u2, u2} R₂ R₂ (MulZeroClass.toHasZero.{u2} R₂ (MulZeroOneClass.toMulZeroClass.{u2} R₂ (MonoidWithZero.toMulZeroOneClass.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (MulActionWithZero.toSMulWithZero.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Module.toMulActionWithZero.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (Monoid.toMulAction.{u2} R₂ (CommMonoid.toMonoid.{u2} R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2)))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e i))
+  forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (i : ι), Eq.{max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSMul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (SMul.smul.{u2, max u3 u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.hasSmul.{u2, u2, u2, u3, u2} R₂ R₂ (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (DivInvMonoid.toMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Group.toDivInvMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.group.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.distribMulAction.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toAddCommGroup.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.smulCommClass_right.{u2, u2, u2} R₂ R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (SMulZeroClass.toHasSmul.{u2, u2} R₂ R₂ (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (SMulWithZero.toSmulZeroClass.{u2, u2} R₂ R₂ (MulZeroClass.toHasZero.{u2} R₂ (MulZeroOneClass.toMulZeroClass.{u2} R₂ (MonoidWithZero.toMulZeroOneClass.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (MulActionWithZero.toSMulWithZero.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Module.toMulActionWithZero.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (Monoid.toMulAction.{u2} R₂ (CommMonoid.toMonoid.{u2} R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2)))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
-Case conversion may be inaccurate. Consider using '#align basis.coord_units_smul Basis.coord_unitsSmulₓ'. -/
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
+Case conversion may be inaccurate. Consider using '#align basis.coord_units_smul Basis.coord_unitsSMulₓ'. -/
 @[simp]
-theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
+theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     (e.units_smul w).Coord i = (w i)⁻¹ • e.Coord i := by
   classical
     apply e.ext
     intro j
     trans ((e.units_smul w).Coord i) ((w j)⁻¹ • (e.units_smul w) j)
     · congr
-      simp [Basis.unitsSmul, ← mul_smul]
+      simp [Basis.unitsSMul, ← mul_smul]
     simp only [Basis.coord_apply, LinearMap.smul_apply, Basis.repr_self, Units.smul_def,
       SMulHomClass.map_smul, Finsupp.single_apply]
     split_ifs with h h
     · simp [h]
     · simp
-#align basis.coord_units_smul Basis.coord_unitsSmul
+#align basis.coord_units_smul Basis.coord_unitsSMul
 
-/- warning: basis.repr_units_smul -> Basis.repr_unitsSmul is a dubious translation:
+/- warning: basis.repr_units_smul -> Basis.repr_unitsSMul is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (v : M) (i : ι), Eq.{succ u2} R₂ (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSmul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (SMul.smul.{u2, u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) R₂ (Units.hasSmul.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e) v) i))
+  forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (v : M) (i : ι), Eq.{succ u2} R₂ (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSMul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (SMul.smul.{u2, u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) R₂ (Units.hasSmul.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e) v) i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
-Case conversion may be inaccurate. Consider using '#align basis.repr_units_smul Basis.repr_unitsSmulₓ'. -/
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
+Case conversion may be inaccurate. Consider using '#align basis.repr_units_smul Basis.repr_unitsSMulₓ'. -/
 @[simp]
-theorem repr_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
+theorem repr_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
     (e.units_smul w).repr v i = (w i)⁻¹ • e.repr v i :=
-  congr_arg (fun f : M →ₗ[R₂] R₂ => f v) (e.coord_unitsSmul w i)
-#align basis.repr_units_smul Basis.repr_unitsSmul
+  congr_arg (fun f : M →ₗ[R₂] R₂ => f v) (e.coord_unitsSMul w i)
+#align basis.repr_units_smul Basis.repr_unitsSMul
 
-/- warning: basis.is_unit_smul -> Basis.isUnitSmul is a dubious translation:
+/- warning: basis.is_unit_smul -> Basis.isUnitSMul is a dubious translation:
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (forall {w : ι -> R}, (forall (i : ι), IsUnit.{u2} R (Ring.toMonoid.{u2} R _inst_1) (w i)) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))
 but is expected to have type
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (forall {w : ι -> R}, (forall (i : ι), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (w i)) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))
-Case conversion may be inaccurate. Consider using '#align basis.is_unit_smul Basis.isUnitSmulₓ'. -/
+Case conversion may be inaccurate. Consider using '#align basis.is_unit_smul Basis.isUnitSMulₓ'. -/
 /-- A version of `smul_of_units` that uses `is_unit`. -/
-def isUnitSmul (v : Basis ι R M) {w : ι → R} (hw : ∀ i, IsUnit (w i)) : Basis ι R M :=
-  unitsSmul v fun i => (hw i).Unit
-#align basis.is_unit_smul Basis.isUnitSmul
+def isUnitSMul (v : Basis ι R M) {w : ι → R} (hw : ∀ i, IsUnit (w i)) : Basis ι R M :=
+  unitsSMul v fun i => (hw i).Unit
+#align basis.is_unit_smul Basis.isUnitSMul
 
-/- warning: basis.is_unit_smul_apply -> Basis.isUnitSmul_apply is a dubious translation:
+/- warning: basis.is_unit_smul_apply -> Basis.isUnitSMul_apply is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (Ring.toMonoid.{u2} R _inst_1) (w i)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.isUnitSmul.{u1, u2, u3} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (w i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v i))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (Ring.toMonoid.{u2} R _inst_1) (w i)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.isUnitSMul.{u1, u2, u3} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (w i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (w i)) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.isUnitSmul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3) _inst_6))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
-Case conversion may be inaccurate. Consider using '#align basis.is_unit_smul_apply Basis.isUnitSmul_applyₓ'. -/
-theorem isUnitSmul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (w i)) (i : ι) :
-    v.isUnitSmul hw i = w i • v i :=
-  unitsSmul_apply i
-#align basis.is_unit_smul_apply Basis.isUnitSmul_apply
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (w i)) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.isUnitSMul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3) _inst_6))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
+Case conversion may be inaccurate. Consider using '#align basis.is_unit_smul_apply Basis.isUnitSMul_applyₓ'. -/
+theorem isUnitSMul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (w i)) (i : ι) :
+    v.isUnitSMul hw i = w i • v i :=
+  unitsSMul_apply i
+#align basis.is_unit_smul_apply Basis.isUnitSMul_apply
 
 section Fin
 
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl, Mario Carneiro, Alexander Bentkamp
 
 ! This file was ported from Lean 3 source module linear_algebra.basis
-! leanprover-community/mathlib commit ee05e9ce1322178f0c12004eb93c00d2c8c00ed2
+! leanprover-community/mathlib commit 04cdee31e196e30f507e8e9eb2d06e02c9ff6310
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -2595,3 +2595,58 @@ theorem quotient_prod_linearEquiv (p : Submodule K V) : Nonempty (((V ⧸ p) ×
 
 end DivisionRing
 
+section RestrictScalars
+
+variable {S : Type _} [CommRing R] [Ring S] [Nontrivial S] [AddCommGroup M]
+
+variable [Algebra R S] [Module S M] [Module R M]
+
+variable [IsScalarTower R S M] [NoZeroSMulDivisors R S] (b : Basis ι S M)
+
+variable (R)
+
+open Submodule
+
+/-- Let `b` be a `S`-basis of `M`. Let `R` be a comm_ring such that `algebra R S` with no zero
+smul divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
+noncomputable def Basis.restrictScalars : Basis ι R (span R (Set.range b)) :=
+  Basis.span (b.LinearIndependent.restrictScalars (smul_left_injective R one_ne_zero))
+#align basis.restrict_scalars Basis.restrictScalars
+
+@[simp]
+theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i := by
+  simp only [Basis.restrictScalars, Basis.span_apply]
+#align basis.restrict_scalars_apply Basis.restrictScalars_apply
+
+@[simp]
+theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
+    algebraMap R S ((b.restrictScalars R).repr m i) = b.repr m i :=
+  by
+  suffices
+    Finsupp.mapRange.linearMap (Algebra.linearMap R S) ∘ₗ (b.restrict_scalars R).repr.toLinearMap =
+      ((b.repr : M →ₗ[S] ι →₀ S).restrictScalars R).domRestrict _
+    by exact Finsupp.congr_fun (LinearMap.congr_fun this m) i
+  refine' Basis.ext (b.restrict_scalars R) fun _ => _
+  simp only [LinearMap.coe_comp, LinearEquiv.coe_toLinearMap, Function.comp_apply, map_one,
+    Basis.repr_self, Finsupp.mapRange.linearMap_apply, Finsupp.mapRange_single,
+    Algebra.linearMap_apply, LinearMap.domRestrict_apply, LinearEquiv.coe_coe,
+    Basis.restrictScalars_apply, LinearMap.coe_restrictScalars]
+#align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_apply
+
+/-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
+coordinates of `m` on the basis `b` are in `R` (see `basis.mem_span` for the case `R = S`). -/
+theorem Basis.mem_span_iff_repr_mem (m : M) :
+    m ∈ span R (Set.range b) ↔ ∀ i, b.repr m i ∈ Set.range (algebraMap R S) :=
+  by
+  refine'
+    ⟨fun hm i => ⟨(b.restrict_scalars R).repr ⟨m, hm⟩ i, b.restrict_scalars_repr_apply R ⟨m, hm⟩ i⟩,
+      fun h => _⟩
+  rw [← b.total_repr m, Finsupp.total_apply S _]
+  refine' sum_mem fun i _ => _
+  obtain ⟨_, h⟩ := h i
+  simp_rw [← h, algebraMap_smul]
+  exact smul_mem _ _ (subset_span (Set.mem_range_self i))
+#align basis.mem_span_iff_repr_mem Basis.mem_span_iff_repr_mem
+
+end RestrictScalars
+
Diff
@@ -1470,7 +1470,7 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (x i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_symm_apply Basis.equivFun_symm_applyₓ'. -/
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
@@ -1483,7 +1483,7 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
@@ -1494,7 +1494,7 @@ theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u4, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.equivFun.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u2, u2, u2, u4, u3, max u1 u2} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.symm.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) f) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
+  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 Case conversion may be inaccurate. Consider using '#align basis.map_equiv_fun Basis.map_equivFunₓ'. -/
 @[simp]
 theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
@@ -1505,7 +1505,7 @@ theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.tr
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
 Case conversion may be inaccurate. Consider using '#align basis.sum_equiv_fun Basis.sum_equivFunₓ'. -/
 theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
   by
@@ -1527,7 +1527,7 @@ theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u1} ι] (i : ι) (j : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_self Basis.equivFun_selfₓ'. -/
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
@@ -1565,7 +1565,7 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12086 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
 Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
@@ -1577,7 +1577,7 @@ theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u1, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u1 u2} (ι -> R) 0 (OfNat.mk.{max u1 u2} (ι -> R) 0 (Zero.zero.{max u1 u2} (ι -> R) (Pi.instZero.{u1, u2} ι (fun (a : ι) => R) (fun (i : ι) => MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12159 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_equiv_fun Basis.coe_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
@@ -1611,7 +1611,7 @@ variable [SMulCommClass R S M']
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_7 : Semiring.{u5} S] [_inst_8 : Module.{u5, u4} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_7)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_7) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u4, u1} M' ι _inst_4 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
@@ -1638,7 +1638,7 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11191 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
@@ -1806,7 +1806,7 @@ protected noncomputable def mk : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
@@ -1923,7 +1923,7 @@ end Span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15522 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15508 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15552 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15538 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
@@ -1957,7 +1957,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15942 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15972 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
@@ -1969,7 +1969,7 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16048 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16034 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16083 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16069 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
@@ -2003,7 +2003,7 @@ theorem unitsSmul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_s
 lean 3 declaration is
   forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (i : ι), Eq.{max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSmul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (SMul.smul.{u2, max u3 u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.hasSmul.{u2, u2, u2, u3, u2} R₂ R₂ (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (DivInvMonoid.toMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Group.toDivInvMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.group.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.distribMulAction.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toAddCommGroup.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.smulCommClass_right.{u2, u2, u2} R₂ R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (SMulZeroClass.toHasSmul.{u2, u2} R₂ R₂ (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (SMulWithZero.toSmulZeroClass.{u2, u2} R₂ R₂ (MulZeroClass.toHasZero.{u2} R₂ (MulZeroOneClass.toMulZeroClass.{u2} R₂ (MonoidWithZero.toMulZeroOneClass.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (MulActionWithZero.toSMulWithZero.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Module.toMulActionWithZero.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (Monoid.toMulAction.{u2} R₂ (CommMonoid.toMonoid.{u2} R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2)))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
 Case conversion may be inaccurate. Consider using '#align basis.coord_units_smul Basis.coord_unitsSmulₓ'. -/
 @[simp]
 theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
@@ -2560,7 +2560,7 @@ open Submodule LinearMap
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), (LT.lt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toLT.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (Top.top.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasTop.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) -> (Exists.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (fun (f : LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) => Exists.{0} (Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) (fun (H : Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) => LE.le.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toLE.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (LinearMap.ker.{u2, u2, u1, u2, max u1 u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.semilinearMapClass.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f))))
 but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), (LT.lt.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLT.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (Top.top.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.instTopSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) -> (Exists.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) (fun (f : LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) => And (Ne.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) f (OfNat.ofNat.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) 0 (Zero.toOfNat0.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) (LinearMap.instZeroLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))))))) (LE.le.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (LinearMap.ker.{u1, u1, u2, u1, max u2 u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) (LinearMap.instSemilinearMapClassLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))))) f))))
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), (LT.lt.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLT.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (Top.top.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.instTopSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) -> (Exists.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (fun (f : LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) => And (Ne.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) f (OfNat.ofNat.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) 0 (Zero.toOfNat0.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instZeroLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))))))) (LE.le.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (LinearMap.ker.{u1, u1, u2, u1, max u2 u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.instSemilinearMapClassLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (Semiring.toModule.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))))) f))))
 Case conversion may be inaccurate. Consider using '#align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_topₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
Diff
@@ -2003,7 +2003,7 @@ theorem unitsSmul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_s
 lean 3 declaration is
   forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (i : ι), Eq.{max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSmul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (SMul.smul.{u2, max u3 u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.hasSmul.{u2, u2, u2, u3, u2} R₂ R₂ (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (DivInvMonoid.toMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Group.toDivInvMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.group.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.distribMulAction.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toAddCommGroup.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.smulCommClass_right.{u2, u2, u2} R₂ R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (SMulZeroClass.toHasSmul.{u2, u2} R₂ R₂ (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (SMulWithZero.toSmulZeroClass.{u2, u2} R₂ R₂ (MulZeroClass.toHasZero.{u2} R₂ (MulZeroOneClass.toMulZeroClass.{u2} R₂ (MonoidWithZero.toMulZeroOneClass.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (MulActionWithZero.toSMulWithZero.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Module.toMulActionWithZero.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (Monoid.toMulAction.{u2} R₂ (CommMonoid.toMonoid.{u2} R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2)))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInvUnits.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
 Case conversion may be inaccurate. Consider using '#align basis.coord_units_smul Basis.coord_unitsSmulₓ'. -/
 @[simp]
 theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
@@ -2025,7 +2025,7 @@ theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (v : M) (i : ι), Eq.{succ u2} R₂ (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSmul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (SMul.smul.{u2, u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) R₂ (Units.hasSmul.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e) v) i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInvUnits.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInv.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_units_smul Basis.repr_unitsSmulₓ'. -/
 @[simp]
 theorem repr_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
Diff
@@ -1838,7 +1838,7 @@ variable {hli hsp}
 
 /- warning: basis.mk_coord_apply_eq -> Basis.mk_coord_apply_eq is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))))
 but is expected to have type
   forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (NonAssocRing.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (Ring.toNonAssocRing.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_eq Basis.mk_coord_apply_eqₓ'. -/
@@ -1863,7 +1863,7 @@ theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i
 
 /- warning: basis.mk_coord_apply -> Basis.mk_coord_apply is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} [_inst_10 : DecidableEq.{succ u1} ι] {i : ι} {j : ι}, Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} R (Eq.{succ u1} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} [_inst_10 : DecidableEq.{succ u1} ι] {i : ι} {j : ι}, Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} R (Eq.{succ u1} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
 but is expected to have type
   forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply Basis.mk_coord_applyₓ'. -/
@@ -1921,7 +1921,7 @@ end Span
 
 /- warning: basis.group_smul_span_eq_top -> Basis.groupSmul_span_eq_top is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
   forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15522 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15508 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
@@ -1941,7 +1941,7 @@ theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Dis
 
 /- warning: basis.group_smul -> Basis.groupSmul is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> G) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> G) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
 but is expected to have type
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (Ring.toAddGroupWithOne.{u2} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toSMul.{u4, u2} G R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (Ring.toAddGroupWithOne.{u2} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (Ring.toAddGroupWithOne.{u2} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u3} G M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toSMul.{u4, u3} G M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> G) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul Basis.groupSmulₓ'. -/
@@ -1955,7 +1955,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 
 /- warning: basis.group_smul_apply -> Basis.groupSmul_apply is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (AddCommGroupWithOne.toAddGroupWithOne.{u2} R (Ring.toAddCommGroupWithOne.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
 but is expected to have type
   forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15942 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
Diff
@@ -100,7 +100,7 @@ To turn a linear independent family of vectors spanning `M` into a basis, use `b
 They are internally represented as linear equivs `M ≃ₗ[R] (ι →₀ R)`,
 available as `basis.repr`.
 -/
-structure Basis where of_repr ::
+structure Basis where ofRepr ::
   repr : M ≃ₗ[R] ι →₀ R
 #align basis Basis
 -/
@@ -116,7 +116,7 @@ instance uniqueBasis [Subsingleton R] : Unique (Basis ι R M) :=
 namespace Basis
 
 instance : Inhabited (Basis ι R (ι →₀ R)) :=
-  ⟨Basis.of_repr (LinearEquiv.refl _ _)⟩
+  ⟨Basis.ofRepr (LinearEquiv.refl _ _)⟩
 
 variable (b b₁ : Basis ι R M) (i : ι) (c : R) (x : M)
 
@@ -151,22 +151,22 @@ instance funLike : FunLike (Basis ι R M) ι fun _ => M
 #align basis.fun_like Basis.funLike
 -/
 
-/- warning: basis.coe_of_repr -> Basis.coe_of_repr is a dubious translation:
+/- warning: basis.coe_of_repr -> Basis.coe_ofRepr is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.of_repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofRepr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (e : LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))), Eq.{max (succ u1) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (Basis.of_repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u1) (succ u3), succ u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (_x : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u1 u3, u2, max (max u1 u3) u2} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u1 u3, u2, max (max u1 u3) u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u1 u3, u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) e) (Finsupp.single.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) i (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1)))))
-Case conversion may be inaccurate. Consider using '#align basis.coe_of_repr Basis.coe_of_reprₓ'. -/
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (e : LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))), Eq.{max (succ u1) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofRepr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u1) (succ u3), succ u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (_x : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u1 u3, u2, max (max u1 u3) u2} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u1 u3, u2, max (max u1 u3) u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u1 u3, u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) e) (Finsupp.single.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) i (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align basis.coe_of_repr Basis.coe_ofReprₓ'. -/
 @[simp]
-theorem coe_of_repr (e : M ≃ₗ[R] ι →₀ R) : ⇑(of_repr e) = fun i => e.symm (Finsupp.single i 1) :=
+theorem coe_ofRepr (e : M ≃ₗ[R] ι →₀ R) : ⇑(ofRepr e) = fun i => e.symm (Finsupp.single i 1) :=
   rfl
-#align basis.coe_of_repr Basis.coe_of_repr
+#align basis.coe_of_repr Basis.coe_ofRepr
 
 /- warning: basis.injective -> Basis.injective is a dubious translation:
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u2} R], Function.Injective.{succ u1, succ u3} ι M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u3} R], Function.Injective.{succ u2, succ u1} ι M (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b)
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u3} R], Function.Injective.{succ u2, succ u1} ι M (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b)
 Case conversion may be inaccurate. Consider using '#align basis.injective Basis.injectiveₓ'. -/
 protected theorem injective [Nontrivial R] : Injective b :=
   b.repr.symm.Injective.comp fun _ _ => (Finsupp.single_left_inj (one_ne_zero : (1 : R) ≠ 0)).mp
@@ -176,7 +176,7 @@ protected theorem injective [Nontrivial R] : Injective b :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single_one Basis.repr_symm_single_oneₓ'. -/
 theorem repr_symm_single_one : b.repr.symm (Finsupp.single i 1) = b i :=
   rfl
@@ -186,7 +186,7 @@ theorem repr_symm_single_one : b.repr.symm (Finsupp.single i 1) = b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i c)) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) c (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) c (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single Basis.repr_symm_singleₓ'. -/
 theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
   calc
@@ -200,7 +200,7 @@ theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_self Basis.repr_selfₓ'. -/
 @[simp]
 theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
@@ -211,7 +211,7 @@ theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u1} ι i j)], Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) _inst_6 (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u3} ι i j)], Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) j) (ite.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Eq.{succ u3} ι i j) _inst_6 (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u3} ι i j)], Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) j) (ite.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Eq.{succ u3} ι i j) _inst_6 (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_self_apply Basis.repr_self_applyₓ'. -/
 theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then 1 else 0 := by
   rw [repr_self, Finsupp.single_apply]
@@ -221,7 +221,7 @@ theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) v) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_apply Basis.repr_symm_applyₓ'. -/
 @[simp]
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
@@ -237,7 +237,7 @@ theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) ((fun (a : Sort.{max (succ (max u1 u2)) (succ u3)}) (b : Sort.{max (succ (max u1 u2)) (succ u3)}) [self : HasLiftT.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} a b] => self.0) (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (HasLiftT.mk.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (CoeTCₓ.coe.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (coeBase.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearEquiv.LinearMap.hasCoe.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearEquiv.toLinearMap.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearEquiv.toLinearMap.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b))
 Case conversion may be inaccurate. Consider using '#align basis.coe_repr_symm Basis.coe_repr_symmₓ'. -/
 @[simp]
 theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
@@ -248,7 +248,7 @@ theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)) v
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
 Case conversion may be inaccurate. Consider using '#align basis.repr_total Basis.repr_totalₓ'. -/
 @[simp]
 theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
@@ -261,7 +261,7 @@ theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
 Case conversion may be inaccurate. Consider using '#align basis.total_repr Basis.total_reprₓ'. -/
 @[simp]
 theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
@@ -284,7 +284,7 @@ theorem repr_range : (b.repr : M →ₗ[R] ι →₀ R).range = Finsupp.supporte
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_span_repr_support Basis.mem_span_repr_supportₓ'. -/
 theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
     m ∈ span R (b '' (b.repr m).support) :=
@@ -295,7 +295,7 @@ theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.hasSubset.{u3} ι) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.instHasSubsetSet.{u3} ι) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.instHasSubsetSet.{u3} ι) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
 Case conversion may be inaccurate. Consider using '#align basis.repr_support_subset_of_mem_span Basis.repr_support_subset_of_mem_spanₓ'. -/
 theorem repr_support_subset_of_mem_span {ι : Type _} (b : Basis ι R M) (s : Set ι) {m : M}
     (hm : m ∈ span R (b '' s)) : ↑(b.repr m).support ⊆ s :=
@@ -383,7 +383,7 @@ theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i,
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) _inst_1)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) _inst_1)))
 Case conversion may be inaccurate. Consider using '#align basis.sum_coords_self_apply Basis.sumCoords_self_applyₓ'. -/
 @[simp]
 theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
@@ -425,7 +425,7 @@ variable {M₁ : Type _} [AddCommMonoid M₁] [Module R₁ M₁]
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u2, u4} R R₁ (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u5}} [_inst_9 : AddCommMonoid.{u5} M₁] [_inst_10 : Module.{u4, u5} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u5} M₁ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 Case conversion may be inaccurate. Consider using '#align basis.ext Basis.extₓ'. -/
 /-- Two linear maps are equal if they are equal on basis vectors. -/
 theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
@@ -441,7 +441,7 @@ include σ'
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u2, u4} R R₁ (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {σ' : RingHom.{u4, u2} R₁ R (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6) (Semiring.toNonAssocSemiring.{u2} R _inst_1)} [_inst_7 : RingHomInvPair.{u2, u4} R R₁ _inst_1 _inst_6 σ σ'] [_inst_8 : RingHomInvPair.{u4, u2} R₁ R _inst_6 _inst_1 σ' σ] {M₁ : Type.{u5}} [_inst_9 : AddCommMonoid.{u5} M₁] [_inst_10 : Module.{u4, u5} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u5} M₁ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearEquiv.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8) f₁ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearEquiv.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8) f₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {σ' : RingHom.{u4, u5} R₁ R (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6) (Semiring.toNonAssocSemiring.{u5} R _inst_1)} [_inst_7 : RingHomInvPair.{u5, u4} R R₁ _inst_1 _inst_6 σ σ'] [_inst_8 : RingHomInvPair.{u4, u5} R₁ R _inst_6 _inst_1 σ' σ] {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {σ' : RingHom.{u4, u5} R₁ R (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6) (Semiring.toNonAssocSemiring.{u5} R _inst_1)} [_inst_7 : RingHomInvPair.{u5, u4} R R₁ _inst_1 _inst_6 σ σ'] [_inst_8 : RingHomInvPair.{u4, u5} R₁ R _inst_6 _inst_1 σ' σ] {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 Case conversion may be inaccurate. Consider using '#align basis.ext' Basis.ext'ₓ'. -/
 /-- Two linear equivs are equal if they are equal on basis vectors. -/
 theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
@@ -477,7 +477,7 @@ alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff Basis.repr_eq_iffₓ'. -/
 theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
     ↑b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
@@ -488,7 +488,7 @@ theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff' Basis.repr_eq_iff'ₓ'. -/
 theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
     b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
@@ -499,7 +499,7 @@ theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) x) (Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) x) (Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) x) (Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.apply_eq_iff Basis.apply_eq_iffₓ'. -/
 theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x = Finsupp.single i 1 :=
   ⟨fun h => h ▸ b.repr_self i, fun h => b.repr.Injective ((b.repr_self i).trans h.symm)⟩
@@ -509,7 +509,7 @@ theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u1 u2} (ι -> R) (Pi.instAdd.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (SMul.smul.{u2, max u1 u2} R (ι -> R) (Function.hasSMul.{u1, u2, u2} ι R R (Mul.toSMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))) -> (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u3 u2} (ι -> R) (Pi.instAdd.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u2, u1} R M _inst_1 _inst_2 _inst_3))))) c x)) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (ι -> R) (ι -> R) (instHSMul.{u2, max u3 u2} R (ι -> R) (Pi.instSMul.{u3, u2, u2} ι R (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.3680 : ι) => R) (fun (i : ι) => SMulZeroClass.toSMul.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MulZeroClass.toSMulWithZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))) -> (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u3 u2} (ι -> R) (Pi.instAdd.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u2, u1} R M _inst_1 _inst_2 _inst_3))))) c x)) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (ι -> R) (ι -> R) (instHSMul.{u2, max u3 u2} R (ι -> R) (Pi.instSMul.{u3, u2, u2} ι R (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.3682 : ι) => R) (fun (i : ι) => SMulZeroClass.toSMul.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MulZeroClass.toSMulWithZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))) -> (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_apply_eq Basis.repr_apply_eqₓ'. -/
 /-- An unbundled version of `repr_eq_iff` -/
 theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f y)
@@ -533,24 +533,24 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
     
 #align basis.repr_apply_eq Basis.repr_apply_eq
 
-/- warning: basis.eq_of_repr_eq_repr -> Basis.eq_of_repr_eq_repr is a dubious translation:
+/- warning: basis.eq_of_repr_eq_repr -> Basis.eq_ofRepr_eq_repr is a dubious translation:
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b₁ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
 but is expected to have type
   forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
-Case conversion may be inaccurate. Consider using '#align basis.eq_of_repr_eq_repr Basis.eq_of_repr_eq_reprₓ'. -/
+Case conversion may be inaccurate. Consider using '#align basis.eq_of_repr_eq_repr Basis.eq_ofRepr_eq_reprₓ'. -/
 /-- Two bases are equal if they assign the same coordinates. -/
-theorem eq_of_repr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
+theorem eq_ofRepr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
   repr_injective <| by
     ext
     apply h
-#align basis.eq_of_repr_eq_repr Basis.eq_of_repr_eq_repr
+#align basis.eq_of_repr_eq_repr Basis.eq_ofRepr_eq_repr
 
 /- warning: basis.eq_of_apply_eq -> Basis.eq_of_apply_eq is a dubious translation:
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b₁ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3}, (forall (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b₁ i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b₂ i)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₂ i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₂ i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
 Case conversion may be inaccurate. Consider using '#align basis.eq_of_apply_eq Basis.eq_of_apply_eqₓ'. -/
 /-- Two bases are equal if their basis vectors are the same. -/
 @[ext]
@@ -568,7 +568,7 @@ variable (f : M ≃ₗ[R] M')
 /-- Apply the linear equivalence `f` to the basis vectors. -/
 @[simps]
 protected def map : Basis ι R M' :=
-  of_repr (f.symm.trans b.repr)
+  ofRepr (f.symm.trans b.repr)
 #align basis.map Basis.map
 -/
 
@@ -576,7 +576,7 @@ protected def map : Basis ι R M' :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (i : ι), Eq.{succ u4} M' (coeFn.{max (succ u1) (succ u2) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) => ι -> M') (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) ι (fun (_x : ι) => M') (Basis.funLike.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5)) (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f) i) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M') i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M') _x) (Basis.funLike.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) (Basis.map.{u3, u2, u1, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f) i) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u2, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u2, u4} R M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u4, max u1 u4} R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u4, max u1 u4} R R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M') i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M') _x) (Basis.funLike.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) (Basis.map.{u3, u2, u1, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f) i) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u2, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u2, u4} R M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u4, max u1 u4} R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u4, max u1 u4} R R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))
 Case conversion may be inaccurate. Consider using '#align basis.map_apply Basis.map_applyₓ'. -/
 @[simp]
 theorem map_apply (i) : b.map f i = f (b i) :=
@@ -621,7 +621,7 @@ def mapCoeffs : Basis ι R' M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u4} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u4} M (HSMul.hSMul.{u2, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M M (instHSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u4, u4} R M M (instHSMul.{u1, u4} R M (SMulZeroClass.toSMul.{u1, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u4} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u4} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u1, u4} R M _inst_1 _inst_2 _inst_3))))) c x)) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u3, succ u4} (Basis.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u3, u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, succ u4} (Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) b i)
+  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u4} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u4} M (HSMul.hSMul.{u2, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M M (instHSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u4, u4} R M M (instHSMul.{u1, u4} R M (SMulZeroClass.toSMul.{u1, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u4} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u4} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u1, u4} R M _inst_1 _inst_2 _inst_3))))) c x)) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u3, succ u4} (Basis.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u3, u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, succ u4} (Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) b i)
 Case conversion may be inaccurate. Consider using '#align basis.map_coeffs_apply Basis.mapCoeffs_applyₓ'. -/
 theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
   apply_eq_iff.mpr <| by simp [f.to_add_equiv_eq_coe]
@@ -631,7 +631,7 @@ theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)
 but is expected to have type
-  forall {ι : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u2, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M M (instHSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_2 _inst_3))))) c x)), Eq.{max (succ u4) (succ u3)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u3} (Basis.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u4, u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u3), succ u4, succ u3} (Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)
+  forall {ι : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u2, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M M (instHSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_2 _inst_3))))) c x)), Eq.{max (succ u4) (succ u3)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u3} (Basis.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u4, u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u3), succ u4, succ u3} (Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)
 Case conversion may be inaccurate. Consider using '#align basis.coe_map_coeffs Basis.coe_mapCoeffsₓ'. -/
 @[simp]
 theorem coe_mapCoeffs : (b.mapCoeffs f h : ι → M) = b :=
@@ -649,7 +649,7 @@ variable (e : ι ≃ ι')
 #print Basis.reindex /-
 /-- `b.reindex (e : ι ≃ ι')` is a basis indexed by `ι'` -/
 def reindex : Basis ι' R M :=
-  Basis.of_repr (b.repr.trans (Finsupp.domLCongr e))
+  Basis.ofRepr (b.repr.trans (Finsupp.domLCongr e))
 #align basis.reindex Basis.reindex
 -/
 
@@ -657,7 +657,7 @@ def reindex : Basis ι' R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u4} M (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) i') (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) i') (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
 Case conversion may be inaccurate. Consider using '#align basis.reindex_apply Basis.reindex_applyₓ'. -/
 theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
   show
@@ -670,7 +670,7 @@ theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u4)} ((fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u2, succ u1, succ u4} ι' ι M (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e)))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} (forall (a : ι'), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) a) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u4, u2, u3} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u4, succ u1, succ u3} ι' ι M (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u4} ι ι' e)))
+  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} (forall (a : ι'), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) a) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u4, u2, u3} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u4, succ u1, succ u3} ι' ι M (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u4} ι ι' e)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_reindex Basis.coe_reindexₓ'. -/
 @[simp]
 theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
@@ -713,7 +713,7 @@ theorem reindex_refl : b.reindex (Equiv.refl ι) = b :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{succ u4} (Set.{u4} M) (Set.range.{u4, succ u2} M ι' (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e))) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι'), Eq.{succ u4} (Set.{u4} M) (Set.range.{u4, succ u3} M ι' (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e))) (Set.range.{u4, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b))
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι'), Eq.{succ u4} (Set.{u4} M) (Set.range.{u4, succ u3} M ι' (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e))) (Set.range.{u4, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b))
 Case conversion may be inaccurate. Consider using '#align basis.range_reindex Basis.range_reindexₓ'. -/
 /-- `simp` can prove this as `basis.coe_reindex` + `equiv_like.range_comp` -/
 theorem range_reindex : Set.range (b.reindex e) = Set.range b := by
@@ -743,7 +743,7 @@ def reindexRange : Basis (range b) R M :=
     b.reindex (Equiv.ofInjective b (Basis.injective b))
   else
     letI : Subsingleton R := not_nontrivial_iff_subsingleton.mp h
-    Basis.of_repr (Module.subsingletonEquiv R M (range b))
+    Basis.ofRepr (Module.subsingletonEquiv R M (range b))
 #align basis.reindex_range Basis.reindexRange
 -/
 
@@ -751,7 +751,7 @@ def reindexRange : Basis (range b) R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.range.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) (Set.mem_range_self.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) i)), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) _x) (Basis.funLike.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) _x) (Basis.funLike.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_self Basis.reindexRange_selfₓ'. -/
 theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange ⟨b i, h⟩ = b i :=
   by
@@ -768,7 +768,7 @@ theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.mem_range_self.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.mem_range_self.{succ u1, u2} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.mem_range_self.{succ u1, u2} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr_self Basis.reindexRange_repr_selfₓ'. -/
 theorem reindexRange_repr_self (i : ι) :
     b.reindexRange.repr (b i) = Finsupp.single ⟨b i, mem_range_self i⟩ 1 :=
@@ -783,7 +783,7 @@ theorem reindexRange_repr_self (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))))))) x)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) _x) (Basis.funLike.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) x)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) _x) (Basis.funLike.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) x)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_apply Basis.reindexRange_applyₓ'. -/
 @[simp]
 theorem reindexRange_apply (x : range b) : b.reindexRange x = x :=
@@ -796,7 +796,7 @@ theorem reindexRange_apply (x : range b) : b.reindexRange x = x :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) bi), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) bi (Exists.intro.{succ u1} ι (fun (y : ι) => Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b y) bi) i h))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) bi), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) bi), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr' Basis.reindexRange_repr'ₓ'. -/
 theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
     b.reindexRange.repr x ⟨bi, ⟨i, h⟩⟩ = b.repr x i :=
@@ -821,7 +821,7 @@ theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.range.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) (Set.mem_range_self.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) i)), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr Basis.reindexRange_reprₓ'. -/
 @[simp]
 theorem reindexRange_repr (x : M) (i : ι) (h := Set.mem_range_self i) :
@@ -845,7 +845,7 @@ def reindexFinsetRange : Basis (Finset.univ.image b) R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) _x) (Basis.funLike.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) _x) (Basis.funLike.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_self Basis.reindexFinsetRange_selfₓ'. -/
 theorem reindexFinsetRange_self (i : ι) (h := Finset.mem_image_of_mem b (Finset.mem_univ i)) :
     b.reindexFinsetRange ⟨b i, h⟩ = b i :=
@@ -858,7 +858,7 @@ theorem reindexFinsetRange_self (i : ι) (h := Finset.mem_image_of_mem b (Finset
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) x) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))))))) x)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) _x) (Basis.funLike.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) x) (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) x)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) _x) (Basis.funLike.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) x) (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) x)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_apply Basis.reindexFinsetRange_applyₓ'. -/
 @[simp]
 theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRange x = x :=
@@ -872,7 +872,7 @@ theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRang
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u2} M] (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.mem_image_of_mem.{u2, u1} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u2} M] (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.mem_image_of_mem.{u2, u1} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr_self Basis.reindexFinsetRange_repr_selfₓ'. -/
 theorem reindexFinsetRange_repr_self (i : ι) :
     b.reindexFinsetRange.repr (b i) =
@@ -888,7 +888,7 @@ theorem reindexFinsetRange_repr_self (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) _x) (Finsupp.funLike.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) _x) (Finsupp.funLike.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr Basis.reindexFinsetRange_reprₓ'. -/
 @[simp]
 theorem reindexFinsetRange_repr (x : M) (i : ι)
@@ -904,7 +904,7 @@ end Reindex
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), LinearIndependent.{u1, u2, u3} ι R M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) _inst_1 _inst_2 _inst_3
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), LinearIndependent.{u3, u2, u1} ι R M (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) _inst_1 _inst_2 _inst_3
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), LinearIndependent.{u3, u2, u1} ι R M (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) _inst_1 _inst_2 _inst_3
 Case conversion may be inaccurate. Consider using '#align basis.linear_independent Basis.linearIndependentₓ'. -/
 protected theorem linearIndependent : LinearIndependent R b :=
   linearIndependent_iff.mpr fun l hl =>
@@ -918,7 +918,7 @@ protected theorem linearIndependent : LinearIndependent R b :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u2} R] (i : ι), Ne.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u3} R] (i : ι), Ne.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u3} R] (i : ι), Ne.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2))))
 Case conversion may be inaccurate. Consider using '#align basis.ne_zero Basis.ne_zeroₓ'. -/
 protected theorem ne_zero [Nontrivial R] (i) : b i ≠ 0 :=
   b.LinearIndependent.NeZero i
@@ -936,7 +936,7 @@ protected theorem mem_span (x : M) : x ∈ span R (range b) :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (Top.top.{u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.hasTop.{u2, u3} R M _inst_1 _inst_2 _inst_3))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Top.top.{u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.instTopSubmodule.{u2, u3} R M _inst_1 _inst_2 _inst_3))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Top.top.{u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.instTopSubmodule.{u2, u3} R M _inst_1 _inst_2 _inst_3))
 Case conversion may be inaccurate. Consider using '#align basis.span_eq Basis.span_eqₓ'. -/
 protected theorem span_eq : span R (range b) = ⊤ :=
   eq_top_iff.mpr fun x _ => b.mem_span x
@@ -959,7 +959,7 @@ theorem index_nonempty (b : Basis ι R M) [Nontrivial M] : Nonempty ι :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {P : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (c : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => Eq.{succ u3} M x (Finsupp.sum.{u1, u2, u3} ι R M (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 c (fun (i : ι) (x : R) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) x ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P)) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P))) b i))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (c : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => Eq.{succ u2} M x (Finsupp.sum.{u1, u3, u2} ι R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_2 c (fun (i : ι) (x : R) => HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _x) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (c : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => Eq.{succ u2} M x (Finsupp.sum.{u1, u3, u2} ι R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_2 c (fun (i : ι) (x : R) => HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _x) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff Basis.mem_submodule_iffₓ'. -/
 /-- If the submodule `P` has a basis, `x ∈ P` iff it is a linear combination of basis vectors. -/
 theorem mem_submodule_iff {P : Submodule R M} (b : Basis ι R P) {x : M} :
@@ -1009,7 +1009,7 @@ def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M'
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u2, u2, u2, u3, max u4 u2, u4} R R R M (Finsupp.{u4, u2} M' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u4, u4, u2} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u2, u2, u2, u3, max u1 u2, max u4 u2} R R R M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (Finsupp.{u4, u2} M' R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.lmapDomain.{u1, u2, u2, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) M' f) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u5) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), max (succ u2) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u5 u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u5, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u3, u3, u3, u5, max u3 u4, u4} R R R M (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.total.{u4, u4, u3} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u3, u3, u3, u5, max u3 u2, max u3 u4} R R R M (Finsupp.{u2, u3} ι R (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.lmapDomain.{u2, u3, u3, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1) M' f) (LinearEquiv.toLinearMap.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b))))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u5) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), max (succ u2) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u5 u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u5, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u3, u3, u3, u5, max u3 u4, u4} R R R M (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.total.{u4, u4, u3} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u3, u3, u3, u5, max u3 u2, max u3 u4} R R R M (Finsupp.{u2, u3} ι R (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.lmapDomain.{u2, u3, u3, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1) M' f) (LinearEquiv.toLinearMap.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b))))
 Case conversion may be inaccurate. Consider using '#align basis.constr_def Basis.constr_defₓ'. -/
 theorem constr_def (f : ι → M') :
     b.constr S f = Finsupp.total M' M' R id ∘ₗ Finsupp.lmapDomain R R f ∘ₗ ↑b.repr :=
@@ -1020,7 +1020,7 @@ theorem constr_def (f : ι → M') :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u1, u2, u4} ι R M' (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) a (f b)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply Basis.constr_applyₓ'. -/
 theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum fun b a => a • f b :=
   by
@@ -1032,7 +1032,7 @@ theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum f
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (f i)
 but is expected to have type
-  forall {ι : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), max (succ u4) (succ u5), max (succ u2) (succ u5)} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u4 u5} S (ι -> M') (AddMonoid.toZero.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u4 u5, max u2 u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u4, u3, u2, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (f i)
+  forall {ι : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), max (succ u4) (succ u5), max (succ u2) (succ u5)} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u4 u5} S (ι -> M') (AddMonoid.toZero.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u4 u5, max u2 u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u4, u3, u2, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.constr_basis Basis.constr_basisₓ'. -/
 @[simp]
 theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i) = f i := by
@@ -1043,7 +1043,7 @@ theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u4} M' (g i) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u3} M' (g i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) g) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u3} M' (g i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) g) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
 Case conversion may be inaccurate. Consider using '#align basis.constr_eq Basis.constr_eqₓ'. -/
 theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)) : b.constr S g = f :=
   b.ext fun i => (b.constr_basis S g i).trans (h i)
@@ -1053,7 +1053,7 @@ theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) f
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) f
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) f
 Case conversion may be inaccurate. Consider using '#align basis.constr_self Basis.constr_selfₓ'. -/
 theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
   b.constr_eq S fun x => rfl
@@ -1063,7 +1063,7 @@ theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u1} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u2, u2, u3, u4, max u3 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u2, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u1} M' ι f))
 but is expected to have type
-  forall {ι : Type.{u5}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u5, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u5} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u3, u3, u2, u4, max u2 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (LinearMap.instSemilinearMapClassLinearMap.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomSurjective.ids.{u3} R _inst_1) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u4), max (succ u5) (succ u4), max (succ u2) (succ u4)} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u5 u4} S (ι -> M') (AddMonoid.toZero.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u5 u4, max u2 u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u5, u3, u2, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u3, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u5} M' ι f))
+  forall {ι : Type.{u5}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u5, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u5} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u3, u3, u2, u4, max u2 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (LinearMap.instSemilinearMapClassLinearMap.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomSurjective.ids.{u3} R _inst_1) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u4), max (succ u5) (succ u4), max (succ u2) (succ u4)} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u5 u4} S (ι -> M') (AddMonoid.toZero.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u5 u4, max u2 u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u5, u3, u2, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u3, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u5} M' ι f))
 Case conversion may be inaccurate. Consider using '#align basis.constr_range Basis.constr_rangeₓ'. -/
 theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span R (range f) := by
   rw [b.constr_def S f, LinearMap.range_comp, LinearMap.range_comp, LinearEquiv.range, ←
@@ -1075,7 +1075,7 @@ theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u1, succ u4, succ u4} ι M' M' (coeFn.{succ u4, succ u4} (LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (fun (_x : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) => M' -> M') (LinearMap.hasCoeToFun.{u2, u2, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f) v)) (LinearMap.comp.{u2, u2, u2, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u5, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u4} R S M' (SMulZeroClass.toSMul.{u5, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u4} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u4} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u5, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (a : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (LinearMap.comp.{u5, u5, u5, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHomCompTriple.ids.{u5, u5} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u5, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u4} R S M' (SMulZeroClass.toSMul.{u5, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u4} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u4} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u5, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (a : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (LinearMap.comp.{u5, u5, u5, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHomCompTriple.ids.{u5, u5} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
 Case conversion may be inaccurate. Consider using '#align basis.constr_comp Basis.constr_compₓ'. -/
 @[simp]
 theorem constr_comp (f : M' →ₗ[R] M') (v : ι → M') : b.constr S (f ∘ v) = f.comp (b.constr S v) :=
@@ -1102,7 +1102,7 @@ protected def equiv : M ≃ₗ[R] M' :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{succ u5} M' (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b' (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e i))
 but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u4, succ u1} ι ι'), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equiv.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι ι') e i))
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u4, succ u1} ι ι'), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equiv.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι ι') e i))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_apply Basis.equiv_applyₓ'. -/
 @[simp]
 theorem equiv_apply : b.Equiv b' e (b i) = b' (e i) := by simp [Basis.equiv]
@@ -1168,7 +1168,7 @@ Case conversion may be inaccurate. Consider using '#align basis.prod Basis.prod
 to a `ι ⊕ ι'`-index basis for `M × M'`.
 For the specific case of `R × R`, see also `basis.fin_two_prod`. -/
 protected def prod : Basis (Sum ι ι') R (M × M') :=
-  of_repr ((b.repr.Prod b'.repr).trans (Finsupp.sumFinsuppLEquivProdFinsupp R).symm)
+  ofRepr ((b.repr.Prod b'.repr).trans (Finsupp.sumFinsuppLEquivProdFinsupp R).symm)
 #align basis.prod Basis.prod
 
 /- warning: basis.prod_repr_inl -> Basis.prod_repr_inl is a dubious translation:
@@ -1197,12 +1197,12 @@ theorem prod_repr_inr (x) (i) : (b.Prod b').repr x (Sum.inr i) = b'.repr x.2 i :
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u4} M (Prod.fst.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u1, u2} ι ι' i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b i)
 but is expected to have type
-  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u1, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u1, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u4} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M (Prod.fst.{u5, u4} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u5)) (succ u4), max (succ u3) (succ u2), max (succ u5) (succ u4)} (Basis.{max u2 u3, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u3, u2} ι ι') => Prod.{u5, u4} M M') _x) (Basis.funLike.{max u3 u2, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u3, u2} ι ι' i))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u5), succ u3, succ u5} (Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) b i)
+  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u1, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u1, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u4} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M (Prod.fst.{u5, u4} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u5)) (succ u4), max (succ u3) (succ u2), max (succ u5) (succ u4)} (Basis.{max u2 u3, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u3, u2} ι ι') => Prod.{u5, u4} M M') _x) (Basis.funLike.{max u3 u2, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u3, u2} ι ι' i))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u5), succ u3, succ u5} (Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) b i)
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inl_fst Basis.prod_apply_inl_fstₓ'. -/
 theorem prod_apply_inl_fst (i) : (b.Prod b' (Sum.inl i)).1 = b i :=
   b.repr.Injective <| by
     ext j
-    simp only [Basis.prod, Basis.coe_of_repr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
+    simp only [Basis.prod, Basis.coe_ofRepr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
       LinearEquiv.prod_apply, b.repr.apply_symm_apply, LinearEquiv.symm_symm, repr_self,
       Equiv.toFun_as_coe, Finsupp.fst_sumFinsuppLEquivProdFinsupp]
     apply Finsupp.single_apply_left Sum.inl_injective
@@ -1212,12 +1212,12 @@ theorem prod_apply_inl_fst (i) : (b.Prod b' (Sum.inl i)).1 = b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u4} M (Prod.fst.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u1, u2} ι ι' i))) (OfNat.ofNat.{u4} M 0 (OfNat.mk.{u4} M 0 (Zero.zero.{u4} M (AddZeroClass.toHasZero.{u4} M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u1, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u1, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u4} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M (Prod.fst.{u5, u4} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u5)) (succ u4), max (succ u3) (succ u2), max (succ u5) (succ u4)} (Basis.{max u2 u3, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u3, u2} ι ι') => Prod.{u5, u4} M M') _x) (Basis.funLike.{max u3 u2, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u3, u2} ι ι' i))) (OfNat.ofNat.{u5} M 0 (Zero.toOfNat0.{u5} M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2))))
+  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u1, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u1, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u4} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M (Prod.fst.{u5, u4} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u5)) (succ u4), max (succ u3) (succ u2), max (succ u5) (succ u4)} (Basis.{max u2 u3, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u3, u2} ι ι') => Prod.{u5, u4} M M') _x) (Basis.funLike.{max u3 u2, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u3, u2} ι ι' i))) (OfNat.ofNat.{u5} M 0 (Zero.toOfNat0.{u5} M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2))))
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inr_fst Basis.prod_apply_inr_fstₓ'. -/
 theorem prod_apply_inr_fst (i) : (b.Prod b' (Sum.inr i)).1 = 0 :=
   b.repr.Injective <| by
     ext i
-    simp only [Basis.prod, Basis.coe_of_repr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
+    simp only [Basis.prod, Basis.coe_ofRepr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
       LinearEquiv.prod_apply, b.repr.apply_symm_apply, LinearEquiv.symm_symm, repr_self,
       Equiv.toFun_as_coe, Finsupp.fst_sumFinsuppLEquivProdFinsupp, LinearEquiv.map_zero,
       Finsupp.zero_apply]
@@ -1228,12 +1228,12 @@ theorem prod_apply_inr_fst (i) : (b.Prod b' (Sum.inr i)).1 = 0 :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u1, u2} ι ι' i))) (OfNat.ofNat.{u5} M' 0 (OfNat.mk.{u5} M' 0 (Zero.zero.{u5} M' (AddZeroClass.toHasZero.{u5} M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u1, u5} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u4)) (succ u5), max (succ u3) (succ u2), max (succ u4) (succ u5)} (Basis.{max u2 u3, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u3, u2} ι ι') => Prod.{u4, u5} M M') _x) (Basis.funLike.{max u3 u2, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u3, u2} ι ι' i))) (OfNat.ofNat.{u5} M' 0 (Zero.toOfNat0.{u5} M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4))))
+  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u1, u5} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u4)) (succ u5), max (succ u3) (succ u2), max (succ u4) (succ u5)} (Basis.{max u2 u3, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u3, u2} ι ι') => Prod.{u4, u5} M M') _x) (Basis.funLike.{max u3 u2, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u3, u2} ι ι' i))) (OfNat.ofNat.{u5} M' 0 (Zero.toOfNat0.{u5} M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4))))
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inl_snd Basis.prod_apply_inl_sndₓ'. -/
 theorem prod_apply_inl_snd (i) : (b.Prod b' (Sum.inl i)).2 = 0 :=
   b'.repr.Injective <| by
     ext j
-    simp only [Basis.prod, Basis.coe_of_repr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
+    simp only [Basis.prod, Basis.coe_ofRepr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
       LinearEquiv.prod_apply, b'.repr.apply_symm_apply, LinearEquiv.symm_symm, repr_self,
       Equiv.toFun_as_coe, Finsupp.snd_sumFinsuppLEquivProdFinsupp, LinearEquiv.map_zero,
       Finsupp.zero_apply]
@@ -1244,12 +1244,12 @@ theorem prod_apply_inl_snd (i) : (b.Prod b' (Sum.inl i)).2 = 0 :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u1, u2} ι ι' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b' i)
 but is expected to have type
-  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u1, u5} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u4)) (succ u5), max (succ u3) (succ u2), max (succ u4) (succ u5)} (Basis.{max u2 u3, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u3, u2} ι ι') => Prod.{u4, u5} M M') _x) (Basis.funLike.{max u3 u2, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u3, u2} ι ι' i))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u5), succ u2, succ u5} (Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' i)
+  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u1, u5} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u4)) (succ u5), max (succ u3) (succ u2), max (succ u4) (succ u5)} (Basis.{max u2 u3, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u3, u2} ι ι') => Prod.{u4, u5} M M') _x) (Basis.funLike.{max u3 u2, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u3, u2} ι ι' i))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u5), succ u2, succ u5} (Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' i)
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inr_snd Basis.prod_apply_inr_sndₓ'. -/
 theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
   b'.repr.Injective <| by
     ext i
-    simp only [Basis.prod, Basis.coe_of_repr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
+    simp only [Basis.prod, Basis.coe_ofRepr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
       LinearEquiv.prod_apply, b'.repr.apply_symm_apply, LinearEquiv.symm_symm, repr_self,
       Equiv.toFun_as_coe, Finsupp.snd_sumFinsuppLEquivProdFinsupp]
     apply Finsupp.single_apply_left Sum.inr_injective
@@ -1259,7 +1259,7 @@ theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u1, u2} ι ι'), Eq.{max (succ u4) (succ u5)} (Prod.{u4, u5} M M') (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u1, u2, max (succ u4) (succ u5)} ι ι' (Prod.{u4, u5} M M') (Function.comp.{succ u1, succ u4, max (succ u4) (succ u5)} ι M (Prod.{u4, u5} M M') (coeFn.{max (succ u4) (succ (max u4 u5)), max (succ u4) (succ (max u4 u5))} (LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u4, max u4 u5} R R M (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inl.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b)) (Function.comp.{succ u2, succ u5, max (succ u4) (succ u5)} ι' M' (Prod.{u4, u5} M M') (coeFn.{max (succ u5) (succ (max u4 u5)), max (succ u5) (succ (max u4 u5))} (LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M' -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u5, max u4 u5} R R M' (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inr.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b')) i)
 but is expected to have type
-  forall {ι : Type.{u5}} {ι' : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u1, u2} R M' _inst_1 _inst_4] (b : Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u5, u4} ι ι'), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') i) (FunLike.coe.{max (max (max (max (succ u5) (succ u4)) (succ u1)) (succ u3)) (succ u2), max (succ u5) (succ u4), max (succ u3) (succ u2)} (Basis.{max u4 u5, u1, max u2 u3} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u5, u4} ι ι') (fun (_x : Sum.{u5, u4} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') _x) (Basis.funLike.{max u5 u4, u1, max u3 u2} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u5, u4, u1, u3, u2} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u5, u4, max (succ u3) (succ u2)} ι ι' (Prod.{u3, u2} M M') (Function.comp.{succ u5, succ u3, max (succ u3) (succ u2)} ι M (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u3, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (Prod.{u3, u2} M M') _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u3, max u3 u2} R R M (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inl.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u5) (succ u1)) (succ u3), succ u5, succ u3} (Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (Function.comp.{succ u4, succ u2, max (succ u3) (succ u2)} ι' M' (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u2, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M' (Prod.{u3, u2} M M') _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, max u3 u2} R R M' (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inr.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u2), succ u4, succ u2} (Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) b')) i)
+  forall {ι : Type.{u5}} {ι' : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u1, u2} R M' _inst_1 _inst_4] (b : Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u5, u4} ι ι'), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') i) (FunLike.coe.{max (max (max (max (succ u5) (succ u4)) (succ u1)) (succ u3)) (succ u2), max (succ u5) (succ u4), max (succ u3) (succ u2)} (Basis.{max u4 u5, u1, max u2 u3} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u5, u4} ι ι') (fun (_x : Sum.{u5, u4} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') _x) (Basis.funLike.{max u5 u4, u1, max u3 u2} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u5, u4, u1, u3, u2} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u5, u4, max (succ u3) (succ u2)} ι ι' (Prod.{u3, u2} M M') (Function.comp.{succ u5, succ u3, max (succ u3) (succ u2)} ι M (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u3, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (Prod.{u3, u2} M M') _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u3, max u3 u2} R R M (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inl.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u5) (succ u1)) (succ u3), succ u5, succ u3} (Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (Function.comp.{succ u4, succ u2, max (succ u3) (succ u2)} ι' M' (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u2, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M' (Prod.{u3, u2} M M') _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, max u3 u2} R R M' (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inr.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u2), succ u4, succ u2} (Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) b')) i)
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply Basis.prod_applyₓ'. -/
 @[simp]
 theorem prod_apply (i) :
@@ -1330,7 +1330,7 @@ section Singleton
 #print Basis.singleton /-
 /-- `basis.singleton ι R` is the basis sending the unique element of `ι` to `1 : R`. -/
 protected def singleton (ι R : Type _) [Unique ι] [Semiring R] : Basis ι R R :=
-  of_repr
+  ofRepr
     { toFun := fun x => Finsupp.single default x
       invFun := fun f => f default
       left_inv := fun x => by simp
@@ -1344,7 +1344,7 @@ protected def singleton (ι R : Type _) [Unique ι] [Semiring R] : Basis ι R R
 lean 3 declaration is
   forall (ι : Type.{u1}) (R : Type.{u2}) [_inst_6 : Unique.{succ u1} ι] [_inst_7 : Semiring.{u2} R] (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Basis.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) (fun (_x : Basis.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) => ι -> R) (FunLike.hasCoeToFun.{max (succ u1) (succ u2), succ u1, succ u2} (Basis.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) ι (fun (_x : ι) => R) (Basis.funLike.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) (Basis.singleton.{u1, u2} ι R _inst_6 _inst_7) i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))))))
 but is expected to have type
-  forall (ι : Type.{u2}) (R : Type.{u1}) [_inst_6 : Unique.{succ u2} ι] [_inst_7 : Semiring.{u1} R] (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => R) i) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Basis.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => R) _x) (Basis.funLike.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (Basis.singleton.{u2, u1} ι R _inst_6 _inst_7) i) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => R) i) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => R) i) (Semiring.toOne.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => R) i) _inst_7)))
+  forall (ι : Type.{u2}) (R : Type.{u1}) [_inst_6 : Unique.{succ u2} ι] [_inst_7 : Semiring.{u1} R] (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => R) i) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Basis.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => R) _x) (Basis.funLike.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (Basis.singleton.{u2, u1} ι R _inst_6 _inst_7) i) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => R) i) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => R) i) (Semiring.toOne.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => R) i) _inst_7)))
 Case conversion may be inaccurate. Consider using '#align basis.singleton_apply Basis.singleton_applyₓ'. -/
 @[simp]
 theorem singleton_apply (ι R : Type _) [Unique ι] [Semiring R] (i) : Basis.singleton ι R i = 1 :=
@@ -1406,7 +1406,7 @@ variable (M)
 #print Basis.empty /-
 /-- If `M` is a subsingleton and `ι` is empty, this is the unique `ι`-indexed basis for `M`. -/
 protected def empty [Subsingleton M] [IsEmpty ι] : Basis ι R M :=
-  of_repr 0
+  ofRepr 0
 #align basis.empty Basis.empty
 -/
 
@@ -1414,7 +1414,7 @@ protected def empty [Subsingleton M] [IsEmpty ι] : Basis ι R M :=
 instance emptyUnique [Subsingleton M] [IsEmpty ι] : Unique (Basis ι R M)
     where
   default := Basis.empty M
-  uniq := fun ⟨x⟩ => congr_arg of_repr <| Subsingleton.elim _ _
+  uniq := fun ⟨x⟩ => congr_arg ofRepr <| Subsingleton.elim _ _
 #align basis.empty_unique Basis.emptyUnique
 -/
 
@@ -1470,7 +1470,7 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (x i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_symm_apply Basis.equivFun_symm_applyₓ'. -/
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
@@ -1483,7 +1483,7 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
@@ -1494,7 +1494,7 @@ theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u4, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.equivFun.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u2, u2, u2, u4, u3, max u1 u2} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.symm.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) f) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
+  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 Case conversion may be inaccurate. Consider using '#align basis.map_equiv_fun Basis.map_equivFunₓ'. -/
 @[simp]
 theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
@@ -1505,7 +1505,7 @@ theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.tr
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
 Case conversion may be inaccurate. Consider using '#align basis.sum_equiv_fun Basis.sum_equivFunₓ'. -/
 theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
   by
@@ -1517,7 +1517,7 @@ theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
 Case conversion may be inaccurate. Consider using '#align basis.sum_repr Basis.sum_reprₓ'. -/
 theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
   b.sum_equivFun u
@@ -1527,7 +1527,7 @@ theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u1} ι] (i : ι) (j : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_self Basis.equivFun_selfₓ'. -/
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
@@ -1538,7 +1538,7 @@ theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))))) c
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u3) (succ u2)} (forall (ᾰ : ι), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) ᾰ) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u1, u3} M ι _inst_2 (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))))) c
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u3) (succ u2)} (forall (ᾰ : ι), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) ᾰ) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u1, u3} M ι _inst_2 (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))))) c
 Case conversion may be inaccurate. Consider using '#align basis.repr_sum_self Basis.repr_sum_selfₓ'. -/
 theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) = c :=
   by
@@ -1557,7 +1557,7 @@ theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) =
 /-- Define a basis by mapping each vector `x : M` to its coordinates `e x : ι → R`,
 as long as `ι` is finite. -/
 def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
-  Basis.of_repr <| e.trans <| LinearEquiv.symm <| Finsupp.linearEquivFunOnFinite R R ι
+  Basis.ofRepr <| e.trans <| LinearEquiv.symm <| Finsupp.linearEquivFunOnFinite R R ι
 #align basis.of_equiv_fun Basis.ofEquivFun
 -/
 
@@ -1565,7 +1565,7 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12080 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
 Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
@@ -1577,7 +1577,7 @@ theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u1, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u1 u2} (ι -> R) 0 (OfNat.mk.{max u1 u2} (ι -> R) 0 (Zero.zero.{max u1 u2} (ι -> R) (Pi.instZero.{u1, u2} ι (fun (a : ι) => R) (fun (i : ι) => MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12153 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_equiv_fun Basis.coe_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
@@ -1611,7 +1611,7 @@ variable [SMulCommClass R S M']
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_7 : Semiring.{u5} S] [_inst_8 : Module.{u5, u4} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_7)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_7) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u4, u1} M' ι _inst_4 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7822 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
@@ -1623,7 +1623,7 @@ theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u2)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u3} M x (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P)) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P))) b i))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u2} M x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (Finset.sum.{u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) ι (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u2, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (instHSMul.{u3, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (Submodule.smul.{u3, u3, u2} R R M _inst_1 _inst_2 _inst_3 P (SMulZeroClass.toSMul.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulZeroClass.toSMulWithZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (IsScalarTower.left.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) a) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u2} M x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (Finset.sum.{u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) ι (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u2, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (instHSMul.{u3, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (Submodule.smul.{u3, u3, u2} R R M _inst_1 _inst_2 _inst_3 P (SMulZeroClass.toSMul.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulZeroClass.toSMulWithZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (IsScalarTower.left.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) a) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff' Basis.mem_submodule_iff'ₓ'. -/
 /-- If the submodule `P` has a finite basis,
 `x ∈ P` iff it is a linear combination of basis vectors. -/
@@ -1638,7 +1638,7 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11185 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
@@ -1688,7 +1688,7 @@ def equiv' (f : M → M') (g : M' → M) (hf : ∀ i, f (b i) ∈ range b') (hg
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.Mem.{u5, u5} M' (Set.{u5} M') (Set.hasMem.{u5} M') (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (Set.range.{u5, succ u2} M' ι' (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b'))) (hg : forall (i : ι'), Membership.Mem.{u4, u4} M (Set.{u4} M) (Set.hasMem.{u4} M) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b))) (hgf : forall (i : ι), Eq.{succ u4} M (g (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (i : ι), Eq.{succ u5} M' (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u3, u3, u4, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u4, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u3, u3, u4, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1)) (Basis.equiv'.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))
 but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))
 Case conversion may be inaccurate. Consider using '#align basis.equiv'_apply Basis.equiv'_applyₓ'. -/
 @[simp]
 theorem equiv'_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι) :
@@ -1700,7 +1700,7 @@ theorem equiv'_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.Mem.{u5, u5} M' (Set.{u5} M') (Set.hasMem.{u5} M') (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (Set.range.{u5, succ u2} M' ι' (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b'))) (hg : forall (i : ι'), Membership.Mem.{u4, u4} M (Set.{u4} M) (Set.hasMem.{u4} M) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b))) (hgf : forall (i : ι), Eq.{succ u4} M (g (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (i : ι'), Eq.{succ u4} M (coeFn.{max (succ u5) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u3, u3, u5, u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) (fun (_x : LinearEquiv.{u3, u3, u5, u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) => M' -> M) (LinearEquiv.hasCoeToFun.{u3, u3, u5, u4} R R M' M (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1)) (LinearEquiv.symm.{u3, u3, u4, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))
 but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι'), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => M) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (a : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') a) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (FunLike.coe.{max (succ u2) (succ u5), succ u5, succ u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => M) _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, u2, max u2 u5} R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, u2, max u2 u5} R R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, u2} R R M' M (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (LinearEquiv.symm.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι'), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => M) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (a : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') a) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (FunLike.coe.{max (succ u2) (succ u5), succ u5, succ u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => M) _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, u2, max u2 u5} R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, u2, max u2 u5} R R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, u2} R R M' M (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (LinearEquiv.symm.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))
 Case conversion may be inaccurate. Consider using '#align basis.equiv'_symm_apply Basis.equiv'_symm_applyₓ'. -/
 @[simp]
 theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι') :
@@ -1712,7 +1712,7 @@ theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι'
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : CommSemiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2] (b : Basis.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u2} R (Finset.sum.{u2, u4} R ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) (coeFn.{max (succ u4) (succ u2) (succ u3), max (succ u4) (succ u3)} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u4) (succ u2) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3)) b' j)) i) (coeFn.{max (succ u4) (succ u2), max (succ u4) (succ u2)} (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι' -> R) (Finsupp.coeFun.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u4 u2)), max (succ u3) (succ (max u4 u2))} (LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u4 u2} R R M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b') x) j))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] (b : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Finset.sum.{u3, u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u3, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) j) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (instHMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonUnitalNonAssocSemiring.toMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1))))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u4, succ u2} (Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b' j)) i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u4, max (max u3 u2) u4} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u4, max (max u3 u2) u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b') x) j))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] (b : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Finset.sum.{u3, u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u3, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) j) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (instHMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonUnitalNonAssocSemiring.toMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1))))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u4, succ u2} (Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι') => M) _x) (Basis.funLike.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b' j)) i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u4, max (max u3 u2) u4} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u4, max (max u3 u2) u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b') x) j))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.sum_repr_mul_repr Basis.sum_repr_mul_reprₓ'. -/
 theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i : ι) :
     (∑ j : ι', b.repr (b' j) i * b'.repr x j) = b.repr x i :=
@@ -1747,7 +1747,7 @@ namespace Basis
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] [_inst_10 : Nontrivial.{u2} R] (b : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6), LinearIndependent.Maximal.{u2, u3, u1} ι R (Ring.toSemiring.{u2} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) b) (Basis.linearIndependent.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 b)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u3, u1} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] [_inst_10 : Nontrivial.{u3} R] (b : Basis.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6), LinearIndependent.Maximal.{u3, u1, u2} ι R (Ring.toSemiring.{u3} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) b) (Basis.linearIndependent.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 b)
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u3, u1} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] [_inst_10 : Nontrivial.{u3} R] (b : Basis.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6), LinearIndependent.Maximal.{u3, u1, u2} ι R (Ring.toSemiring.{u3} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) b) (Basis.linearIndependent.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 b)
 Case conversion may be inaccurate. Consider using '#align basis.maximal Basis.maximalₓ'. -/
 /-- Any basis is a maximal linear independent set.
 -/
@@ -1792,7 +1792,7 @@ but is expected to have type
 Case conversion may be inaccurate. Consider using '#align basis.mk Basis.mkₓ'. -/
 /-- A linear independent family of vectors spanning the whole module is a basis. -/
 protected noncomputable def mk : Basis ι R M :=
-  Basis.of_repr
+  Basis.ofRepr
     {
       hli.repr.comp
         (LinearMap.id.codRestrict _ fun h =>
@@ -1817,7 +1817,7 @@ theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_t
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u2, u1, u3} ι R M v (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (Top.top.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u2} M ι v))) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Basis.mk.{u2, u1, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u2, u1, u3} ι R M v (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (Top.top.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u2} M ι v))) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Basis.mk.{u2, u1, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)
 Case conversion may be inaccurate. Consider using '#align basis.mk_apply Basis.mk_applyₓ'. -/
 theorem mk_apply (i : ι) : Basis.mk hli hsp i = v i :=
   show Finsupp.total _ _ _ v _ = v i by simp
@@ -1827,7 +1827,7 @@ theorem mk_apply (i : ι) : Basis.mk hli hsp i = v i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) v
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] (hli : LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (hsp : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.mk.{u3, u1, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) v
+  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] (hli : LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (hsp : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.mk.{u3, u1, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) v
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk Basis.coe_mkₓ'. -/
 @[simp]
 theorem coe_mk : ⇑(Basis.mk hli hsp) = v :=
@@ -1923,7 +1923,7 @@ end Span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15517 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15503 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15522 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15508 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
@@ -1957,7 +1957,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15937 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15942 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
@@ -1969,7 +1969,7 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16043 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16029 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16048 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16034 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
@@ -1993,7 +1993,7 @@ def unitsSmul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.unitsSmul.{u1, u2, u3} ι R M _inst_1 _inst_3 _inst_6 v w) i) (SMul.smul.{u2, u3} (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) M (Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (w i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))} (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.unitsSmul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v w) i) (HSMul.hSMul.{u2, u1, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u2, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Units.instSMulUnits.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3) _inst_6)))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))} (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.unitsSmul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v w) i) (HSMul.hSMul.{u2, u1, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Units.instSMulUnits.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3) _inst_6)))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
 Case conversion may be inaccurate. Consider using '#align basis.units_smul_apply Basis.unitsSmul_applyₓ'. -/
 theorem unitsSmul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_smul w i = w i • v i :=
   mk_apply (v.LinearIndependent.units_smul w) (units_smul_span_eq_top v.span_eq).ge i
@@ -2048,7 +2048,7 @@ def isUnitSmul (v : Basis ι R M) {w : ι → R} (hw : ∀ i, IsUnit (w i)) : Ba
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (Ring.toMonoid.{u2} R _inst_1) (w i)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.isUnitSmul.{u1, u2, u3} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (w i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (w i)) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.isUnitSmul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3) _inst_6))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (w i)) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.isUnitSmul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) i) _inst_3) _inst_6))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
 Case conversion may be inaccurate. Consider using '#align basis.is_unit_smul_apply Basis.isUnitSmul_applyₓ'. -/
 theorem isUnitSmul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (w i)) (i : ι) :
     v.isUnitSmul hw i = w i • v i :=
@@ -2086,7 +2086,7 @@ noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fi
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N)), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> M) (Basis.mkFinCons.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> M) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => M) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Basis.mkFinCons.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => M) y (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (coeSubtype.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)))))) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N)), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.mkFinCons.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) y (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) M (Subtype.val.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Set.{u1} M) (Set.instMembershipSet.{u1} M) x (SetLike.coe.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) N))) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N)), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.mkFinCons.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) y (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) M (Subtype.val.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Set.{u1} M) (Set.instMembershipSet.{u1} M) x (SetLike.coe.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) N))) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons Basis.coe_mkFinConsₓ'. -/
 @[simp]
 theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R N)
@@ -2115,7 +2115,7 @@ noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (yO : Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hNO : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (Submodule.ofLe.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N O hNO)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLeₓ'. -/
 @[simp]
 theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
@@ -2141,7 +2141,7 @@ protected def finTwoProd (R : Type _) [Semiring R] : Basis (Fin 2) R (R × R) :=
 lean 3 declaration is
   forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} (Prod.{u1, u1} R R) (coeFn.{succ u1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> (Prod.{u1, u1} R R)) (FunLike.hasCoeToFun.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) => Prod.{u1, u1} R R) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne)) (CharZero.NeZero.two.{0} Nat (AddCommMonoidWithOne.toAddMonoidWithOne.{0} Nat (NonAssocSemiring.toAddCommMonoidWithOne.{0} Nat (Semiring.toNonAssocSemiring.{0} Nat Nat.semiring))) (StrictOrderedSemiring.to_charZero.{0} Nat Nat.strictOrderedSemiring))))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))) (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))))
 but is expected to have type
-  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 0 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 0 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (FunLike.coe.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) _x) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 0 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 0 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_10))) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)))))
+  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 0 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 0 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (FunLike.coe.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) _x) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 0 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 0 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_10))) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)))))
 Case conversion may be inaccurate. Consider using '#align basis.fin_two_prod_zero Basis.finTwoProd_zeroₓ'. -/
 @[simp]
 theorem finTwoProd_zero (R : Type _) [Semiring R] : Basis.finTwoProd R 0 = (1, 0) := by
@@ -2152,7 +2152,7 @@ theorem finTwoProd_zero (R : Type _) [Semiring R] : Basis.finTwoProd R 0 = (1, 0
 lean 3 declaration is
   forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} (Prod.{u1, u1} R R) (coeFn.{succ u1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> (Prod.{u1, u1} R R)) (FunLike.hasCoeToFun.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) => Prod.{u1, u1} R R) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne)) (CharZero.NeZero.two.{0} Nat (AddCommMonoidWithOne.toAddMonoidWithOne.{0} Nat (NonAssocSemiring.toAddCommMonoidWithOne.{0} Nat (Semiring.toNonAssocSemiring.{0} Nat Nat.semiring))) (StrictOrderedSemiring.to_charZero.{0} Nat Nat.strictOrderedSemiring))))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))))
 but is expected to have type
-  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 1 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 1 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (FunLike.coe.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) _x) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 1 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 1 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_10))))
+  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 1 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 1 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (FunLike.coe.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) _x) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 1 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 1 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_10))))
 Case conversion may be inaccurate. Consider using '#align basis.fin_two_prod_one Basis.finTwoProd_oneₓ'. -/
 @[simp]
 theorem finTwoProd_one (R : Type _) [Semiring R] : Basis.finTwoProd R 1 = (0, 1) := by
@@ -2250,7 +2250,7 @@ noncomputable def extend (hs : LinearIndependent K (coe : s → V)) : Basis _ K
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))), Eq.{succ u1} V (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s hs) x) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))))))) x)
 but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs) x) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) x)
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs) x) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) x)
 Case conversion may be inaccurate. Consider using '#align basis.extend_apply_self Basis.extend_apply_selfₓ'. -/
 theorem extend_apply_self (hs : LinearIndependent K (coe : s → V)) (x : hs.extend _) :
     Basis.extend hs x = x :=
@@ -2261,7 +2261,7 @@ theorem extend_apply_self (hs : LinearIndependent K (coe : s → V)) (x : hs.ext
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Eq.{succ u1} ((coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s hs)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))))))))
 but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Eq.{succ u2} (forall (a : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs)) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))))
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Eq.{succ u2} (forall (a : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs)) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))))
 Case conversion may be inaccurate. Consider using '#align basis.coe_extend Basis.coe_extendₓ'. -/
 @[simp]
 theorem coe_extend (hs : LinearIndependent K (coe : s → V)) : ⇑(Basis.extend hs) = coe :=
@@ -2272,7 +2272,7 @@ theorem coe_extend (hs : LinearIndependent K (coe : s → V)) : ⇑(Basis.extend
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Eq.{succ u1} (Set.{u1} V) (Set.range.{u1, succ u1} V (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s hs))) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))
 but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Eq.{succ u2} (Set.{u2} V) (Set.range.{u2, succ u2} V (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs))) (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Eq.{succ u2} (Set.{u2} V) (Set.range.{u2, succ u2} V (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs))) (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))
 Case conversion may be inaccurate. Consider using '#align basis.range_extend Basis.range_extendₓ'. -/
 theorem range_extend (hs : LinearIndependent K (coe : s → V)) :
     range (Basis.extend hs) = hs.extend (subset_univ _) := by
@@ -2333,7 +2333,7 @@ noncomputable def ofVectorSpace : Basis (ofVectorSpaceIndex K V) K V :=
 lean 3 declaration is
   forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)), Eq.{succ u1} V (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.ofVectorSpace.{u1, u2} K V _inst_1 _inst_2 _inst_4) x) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)))))) x)
 but is expected to have type
-  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4) x) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) x)
+  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4) x) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) x)
 Case conversion may be inaccurate. Consider using '#align basis.of_vector_space_apply_self Basis.ofVectorSpace_apply_selfₓ'. -/
 theorem ofVectorSpace_apply_self (x : ofVectorSpaceIndex K V) : ofVectorSpace K V x = x :=
   Basis.mk_apply _ _ _
@@ -2343,7 +2343,7 @@ theorem ofVectorSpace_apply_self (x : ofVectorSpaceIndex K V) : ofVectorSpace K
 lean 3 declaration is
   forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)], Eq.{succ u1} ((coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.ofVectorSpace.{u1, u2} K V _inst_1 _inst_2 _inst_4)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)))))))
 but is expected to have type
-  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], Eq.{succ u2} (forall (a : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)))
+  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], Eq.{succ u2} (forall (a : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_vector_space Basis.coe_ofVectorSpaceₓ'. -/
 @[simp]
 theorem coe_ofVectorSpace : ⇑(ofVectorSpace K V) = coe :=
@@ -2368,7 +2368,7 @@ theorem ofVectorSpaceIndex.linearIndependent :
 lean 3 declaration is
   forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)], Eq.{succ u1} (Set.{u1} V) (Set.range.{u1, succ u1} V (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.ofVectorSpace.{u1, u2} K V _inst_1 _inst_2 _inst_4))) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)
 but is expected to have type
-  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], Eq.{succ u2} (Set.{u2} V) (Set.range.{u2, succ u2} V (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4))) (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)
+  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], Eq.{succ u2} (Set.{u2} V) (Set.range.{u2, succ u2} V (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4))) (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)
 Case conversion may be inaccurate. Consider using '#align basis.range_of_vector_space Basis.range_ofVectorSpaceₓ'. -/
 theorem range_ofVectorSpace : range (ofVectorSpace K V) = ofVectorSpaceIndex K V :=
   range_extend _
Diff
@@ -284,7 +284,7 @@ theorem repr_range : (b.repr : M →ₗ[R] ι →₀ R).range = Finsupp.supporte
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_span_repr_support Basis.mem_span_repr_supportₓ'. -/
 theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
     m ∈ span R (b '' (b.repr m).support) :=
@@ -295,7 +295,7 @@ theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.hasSubset.{u3} ι) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.instHasSubsetSet.{u3} ι) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.instHasSubsetSet.{u3} ι) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
 Case conversion may be inaccurate. Consider using '#align basis.repr_support_subset_of_mem_span Basis.repr_support_subset_of_mem_spanₓ'. -/
 theorem repr_support_subset_of_mem_span {ι : Type _} (b : Basis ι R M) (s : Set ι) {m : M}
     (hm : m ∈ span R (b '' s)) : ↑(b.repr m).support ⊆ s :=
@@ -924,17 +924,13 @@ protected theorem ne_zero [Nontrivial R] (i) : b i ≠ 0 :=
   b.LinearIndependent.NeZero i
 #align basis.ne_zero Basis.ne_zero
 
-/- warning: basis.mem_span -> Basis.mem_span is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b)))
-Case conversion may be inaccurate. Consider using '#align basis.mem_span Basis.mem_spanₓ'. -/
+#print Basis.mem_span /-
 protected theorem mem_span (x : M) : x ∈ span R (range b) :=
   by
   rw [← b.total_repr x, Finsupp.total_apply, Finsupp.sum]
   exact Submodule.sum_mem _ fun i hi => Submodule.smul_mem _ _ (Submodule.subset_span ⟨i, rfl⟩)
 #align basis.mem_span Basis.mem_span
+-/
 
 /- warning: basis.span_eq -> Basis.span_eq is a dubious translation:
 lean 3 declaration is
@@ -963,7 +959,7 @@ theorem index_nonempty (b : Basis ι R M) [Nontrivial M] : Nonempty ι :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {P : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (c : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => Eq.{succ u3} M x (Finsupp.sum.{u1, u2, u3} ι R M (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 c (fun (i : ι) (x : R) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) x ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P)) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P))) b i))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (c : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => Eq.{succ u2} M x (Finsupp.sum.{u1, u3, u2} ι R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_2 c (fun (i : ι) (x : R) => HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _x) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (c : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => Eq.{succ u2} M x (Finsupp.sum.{u1, u3, u2} ι R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_2 c (fun (i : ι) (x : R) => HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _x) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff Basis.mem_submodule_iffₓ'. -/
 /-- If the submodule `P` has a basis, `x ∈ P` iff it is a linear combination of basis vectors. -/
 theorem mem_submodule_iff {P : Submodule R M} (b : Basis ι R P) {x : M} :
@@ -1310,7 +1306,7 @@ protected theorem smul_eq_zero [NoZeroDivisors R] (b : Basis ι R M) {c : R} {x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall (N : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3), (forall {m : Nat} (v : (Fin m) -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N)), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x N)))))) v) _inst_1 _inst_2 _inst_3) -> (Eq.{1} Nat m (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero))))) -> (Eq.{succ u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) N (Bot.bot.{u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.hasBot.{u2, u3} R M _inst_1 _inst_2 _inst_3))))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u3} R (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))], (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) -> (forall (N : Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3), (forall {m : Nat} (v : (Fin m) -> (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u1} R M _inst_1 _inst_2 _inst_3)) x N))), (LinearIndependent.{0, u3, u1} (Fin m) R M (Function.comp.{1, succ u1, succ u1} (Fin m) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u1} R M _inst_1 _inst_2 _inst_3)) x N)) M (Subtype.val.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Set.{u1} M) (Set.instMembershipSet.{u1} M) x (SetLike.coe.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) N))) v) _inst_1 _inst_2 _inst_3) -> (Eq.{1} Nat m (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))) -> (Eq.{succ u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) N (Bot.bot.{u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (Submodule.instBotSubmodule.{u3, u1} R M _inst_1 _inst_2 _inst_3))))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u3} R (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))], (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) -> (forall (N : Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3), (forall {m : Nat} (v : (Fin m) -> (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u1} R M _inst_1 _inst_2 _inst_3)) x N))), (LinearIndependent.{0, u3, u1} (Fin m) R M (Function.comp.{1, succ u1, succ u1} (Fin m) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u1} R M _inst_1 _inst_2 _inst_3)) x N)) M (Subtype.val.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Set.{u1} M) (Set.instMembershipSet.{u1} M) x (SetLike.coe.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u1} R M _inst_1 _inst_2 _inst_3) N))) v) _inst_1 _inst_2 _inst_3) -> (Eq.{1} Nat m (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))) -> (Eq.{succ u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) N (Bot.bot.{u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (Submodule.instBotSubmodule.{u3, u1} R M _inst_1 _inst_2 _inst_3))))
 Case conversion may be inaccurate. Consider using '#align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zeroₓ'. -/
 theorem Basis.eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N : Submodule R M)
     (rank_eq : ∀ {m : ℕ} (v : Fin m → N), LinearIndependent R (coe ∘ v : Fin m → M) → m = 0) :
@@ -1627,7 +1623,7 @@ theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u2)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u3} M x (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P)) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P))) b i))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u2} M x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (Finset.sum.{u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) ι (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u2, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (instHSMul.{u3, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (Submodule.instSMulSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u3, u2} R R M _inst_1 _inst_2 _inst_3 P (SMulZeroClass.toSMul.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulZeroClass.toSMulWithZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (IsScalarTower.left.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) a) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u2} M x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (Finset.sum.{u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) ι (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u2, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (instHSMul.{u3, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (Submodule.smul.{u3, u3, u2} R R M _inst_1 _inst_2 _inst_3 P (SMulZeroClass.toSMul.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulZeroClass.toSMulWithZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (IsScalarTower.left.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) a) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.addCommMonoid.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff' Basis.mem_submodule_iff'ₓ'. -/
 /-- If the submodule `P` has a finite basis,
 `x ∈ P` iff it is a linear combination of basis vectors. -/
@@ -1810,7 +1806,7 @@ protected noncomputable def mk : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
@@ -1887,12 +1883,7 @@ section Span
 
 variable (hli : LinearIndependent R v)
 
-/- warning: basis.span -> Basis.span is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))))
-but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (Basis.{u1, u2, u3} ι R (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)))) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))))
-Case conversion may be inaccurate. Consider using '#align basis.span Basis.spanₓ'. -/
+#print Basis.span /-
 /-- A linear independent family of vectors is a basis for their span. -/
 protected noncomputable def span : Basis ι R (span R (range v)) :=
   Basis.mk (linearIndependent_span hli) <| by
@@ -1918,6 +1909,7 @@ protected noncomputable def span : Basis ι R (span R (range v)) :=
       simp
     rwa [h_x_eq_y]
 #align basis.span Basis.span
+-/
 
 #print Basis.span_apply /-
 protected theorem span_apply (i : ι) : (Basis.span hli i : M) = v i :=
@@ -2069,7 +2061,7 @@ section Fin
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) -> (forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N)) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)
 but is expected to have type
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Basis.{0, u1, u2} (Fin n) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (forall (c : R) (x : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3)))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))))) -> (forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y)) N)) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Basis.{0, u1, u2} (Fin n) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (forall (c : R) (x : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3)))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))))) -> (forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y)) N)) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)
 Case conversion may be inaccurate. Consider using '#align basis.mk_fin_cons Basis.mkFinConsₓ'. -/
 /-- Let `b` be a basis for a submodule `N` of `M`. If `y : M` is linear independent of `N`
 and `y` and `N` together span the whole of `M`, then there is a basis for `M`
@@ -2094,7 +2086,7 @@ noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fi
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N)), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> M) (Basis.mkFinCons.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> M) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => M) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Basis.mkFinCons.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => M) y (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (coeSubtype.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)))))) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N)), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.mkFinCons.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) y (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) M (Subtype.val.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Set.{u1} M) (Set.instMembershipSet.{u1} M) x (SetLike.coe.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) N))) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N)), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.mkFinCons.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) y (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) M (Subtype.val.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Set.{u1} M) (Set.instMembershipSet.{u1} M) x (SetLike.coe.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) N))) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons Basis.coe_mkFinConsₓ'. -/
 @[simp]
 theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R N)
@@ -2107,7 +2099,7 @@ theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) -> (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) -> (forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) -> (forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))
 but is expected to have type
-  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) -> (Basis.{0, u1, u2} (Fin n) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) N O) -> (forall (c : R) (x : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3)))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))))) -> (forall (z : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y)) N))) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) -> (Basis.{0, u1, u2} (Fin n) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) N O) -> (forall (c : R) (x : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3)))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))))) -> (forall (z : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y)) N))) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))
 Case conversion may be inaccurate. Consider using '#align basis.mk_fin_cons_of_le Basis.mkFinConsOfLeₓ'. -/
 /-- Let `b` be a basis for a submodule `N ≤ O`. If `y ∈ O` is linear independent of `N`
 and `y` and `N` together span the whole of `O`, then there is a basis for `O`
@@ -2123,7 +2115,7 @@ noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (yO : Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hNO : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (Submodule.ofLe.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N O hNO)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLeₓ'. -/
 @[simp]
 theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
@@ -2195,7 +2187,7 @@ variable [AddCommGroup M] [Module R M] {b : ι → M}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_2 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_1)] [_inst_3 : AddCommGroup.{u3} M] [_inst_4 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (forall (P : (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> Sort.{u4}), (forall (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall (N' : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)))) N' N) -> (forall (x : M), (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N) -> (forall (c : R) (y : M), (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) y N') -> (Eq.{succ u3} M (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))))) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)))) c x) y) (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))) -> (P N'))) -> (P N)) -> (forall (n : Nat) (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall {m : Nat} (v : (Fin m) -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N)), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N)))))) v) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (LE.le.{0} Nat Nat.hasLe m n)) -> (P N)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_2 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_1)] [_inst_3 : AddCommGroup.{u3} M] [_inst_4 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (forall (P : (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> Sort.{u4}), (forall (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall (N' : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Submodule.completeLattice.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4))))) N' N) -> (forall (x : M), (Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N) -> (forall (c : R) (y : M), (Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) y N') -> (Eq.{succ u3} M (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))))) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4))))) c x) y) (OfNat.ofNat.{u3} M 0 (Zero.toOfNat0.{u3} M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) -> (P N'))) -> (P N)) -> (forall (n : Nat) (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall {m : Nat} (v : (Fin m) -> (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N))), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N)) M (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (SetLike.coe.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) N))) v) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (LE.le.{0} Nat instLENat m n)) -> (P N)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_2 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_1)] [_inst_3 : AddCommGroup.{u3} M] [_inst_4 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (forall (P : (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> Sort.{u4}), (forall (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall (N' : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Submodule.completeLattice.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4))))) N' N) -> (forall (x : M), (Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N) -> (forall (c : R) (y : M), (Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) y N') -> (Eq.{succ u3} M (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))))) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4))))) c x) y) (OfNat.ofNat.{u3} M 0 (Zero.toOfNat0.{u3} M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) -> (P N'))) -> (P N)) -> (forall (n : Nat) (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall {m : Nat} (v : (Fin m) -> (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N))), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N)) M (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (SetLike.coe.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) N))) v) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (LE.le.{0} Nat instLENat m n)) -> (P N)))
 Case conversion may be inaccurate. Consider using '#align submodule.induction_on_rank_aux Submodule.inductionOnRankAuxₓ'. -/
 /-- If `N` is a submodule with finite rank, do induction on adjoining a linear independent
 element to a submodule. -/
@@ -2421,7 +2413,7 @@ variable {K V}
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (v : V), (Ne.{succ u1} V v (OfNat.ofNat.{u1} V 0 (OfNat.mk.{u1} V 0 (Zero.zero.{u1} V (AddZeroClass.toHasZero.{u1} V (AddMonoid.toAddZeroClass.{u1} V (SubNegMonoid.toAddMonoid.{u1} V (AddGroup.toSubNegMonoid.{u1} V (AddCommGroup.toAddGroup.{u1} V _inst_2))))))))) -> (IsAtom.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) (Submodule.orderBot.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.span.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 (Singleton.singleton.{u1, u1} V (Set.{u1} V) (Set.hasSingleton.{u1} V) v)))
 but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (v : V), (Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) -> (IsAtom.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)))) (Submodule.instOrderBotSubmoduleToLEToPreorderInstPartialOrderInstSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.span.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 (Singleton.singleton.{u2, u2} V (Set.{u2} V) (Set.instSingletonSet.{u2} V) v)))
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (v : V), (Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) -> (IsAtom.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)))) (Submodule.instOrderBotSubmoduleToLEToPreorderInstPartialOrderSetLike.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.span.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 (Singleton.singleton.{u2, u2} V (Set.{u2} V) (Set.instSingletonSet.{u2} V) v)))
 Case conversion may be inaccurate. Consider using '#align nonzero_span_atom nonzero_span_atomₓ'. -/
 /-- For a module over a division ring, the span of a nonzero element is an atom of the
 lattice of submodules. -/
@@ -2450,7 +2442,7 @@ theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodul
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (W : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Iff (IsAtom.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) (Submodule.orderBot.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) W) (Exists.{succ u1} V (fun (v : V) => Exists.{0} (Ne.{succ u1} V v (OfNat.ofNat.{u1} V 0 (OfNat.mk.{u1} V 0 (Zero.zero.{u1} V (AddZeroClass.toHasZero.{u1} V (AddMonoid.toAddZeroClass.{u1} V (SubNegMonoid.toAddMonoid.{u1} V (AddGroup.toSubNegMonoid.{u1} V (AddCommGroup.toAddGroup.{u1} V _inst_2))))))))) (fun (hv : Ne.{succ u1} V v (OfNat.ofNat.{u1} V 0 (OfNat.mk.{u1} V 0 (Zero.zero.{u1} V (AddZeroClass.toHasZero.{u1} V (AddMonoid.toAddZeroClass.{u1} V (SubNegMonoid.toAddMonoid.{u1} V (AddGroup.toSubNegMonoid.{u1} V (AddCommGroup.toAddGroup.{u1} V _inst_2))))))))) => Eq.{succ u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) W (Submodule.span.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 (Singleton.singleton.{u1, u1} V (Set.{u1} V) (Set.hasSingleton.{u1} V) v)))))
 but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (W : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Iff (IsAtom.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)))) (Submodule.instOrderBotSubmoduleToLEToPreorderInstPartialOrderInstSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) W) (Exists.{succ u2} V (fun (v : V) => Exists.{0} (Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) (fun (hv : Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) => Eq.{succ u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) W (Submodule.span.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 (Singleton.singleton.{u2, u2} V (Set.{u2} V) (Set.instSingletonSet.{u2} V) v)))))
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (W : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Iff (IsAtom.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)))) (Submodule.instOrderBotSubmoduleToLEToPreorderInstPartialOrderSetLike.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) W) (Exists.{succ u2} V (fun (v : V) => Exists.{0} (Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) (fun (hv : Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) => Eq.{succ u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) W (Submodule.span.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 (Singleton.singleton.{u2, u2} V (Set.{u2} V) (Set.instSingletonSet.{u2} V) v)))))
 Case conversion may be inaccurate. Consider using '#align atom_iff_nonzero_span atom_iff_nonzero_spanₓ'. -/
 /-- The atoms of the lattice of submodules of a module over a division ring are the
 submodules equal to the span of a nonzero element of the module. -/
@@ -2552,7 +2544,7 @@ theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_sur
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} {V' : Type.{u3}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_3 : AddCommGroup.{u3} V'] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_5 : Module.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3)] {p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4} (f : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) V' (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) _inst_5), Exists.{max (succ u1) (succ u3)} (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) (fun (g : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) => Eq.{max (succ u1) (succ u3)} (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) V' (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) _inst_5) (LinearMap.comp.{u2, u2, u2, u1, u1, u3} K K K (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomCompTriple.right_ids.{u2, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) g (Submodule.subtype.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p)) f)
 but is expected to have type
-  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] {p : Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4} (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V' (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_5), Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (fun (g : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) => Eq.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V' (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_5) (LinearMap.comp.{u2, u2, u2, u3, u3, u1} K K K (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) g (Submodule.subtype.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p)) f)
+  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] {p : Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4} (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V' (Submodule.addCommMonoid.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_5), Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (fun (g : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) => Eq.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V' (Submodule.addCommMonoid.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_5) (LinearMap.comp.{u2, u2, u2, u3, u3, u1} K K K (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (Submodule.addCommMonoid.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) g (Submodule.subtype.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p)) f)
 Case conversion may be inaccurate. Consider using '#align linear_map.exists_extend LinearMap.exists_extendₓ'. -/
 /-- Any linear map `f : p →ₗ[K] V'` defined on a subspace `p` can be extended to the whole
 space. -/
@@ -2592,7 +2584,7 @@ theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
 lean 3 declaration is
   forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Nonempty.{succ u1} (LinearEquiv.{u2, u2, u1, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomInvPair.ids.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHomInvPair.ids.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (Prod.{u1, u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p)) V (Prod.addCommMonoid.{u1, u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) (AddCommGroup.toAddCommMonoid.{u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4 p)) (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (Prod.module.{u2, u1, u1} K (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4 p)) (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (Submodule.Quotient.module.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4 p) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p)) _inst_4)
 but is expected to have type
-  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Nonempty.{succ u2} (LinearEquiv.{u1, u1, u2, u2} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (RingHomInvPair.ids.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHomInvPair.ids.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (Prod.{u2, u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p))) V (Prod.instAddCommMonoidSum.{u2, u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p)) (AddCommGroup.toAddCommMonoid.{u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p)) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (Prod.module.{u1, u2, u2} K (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p)) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p) (Submodule.Quotient.module.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p)) _inst_4)
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Nonempty.{succ u2} (LinearEquiv.{u1, u1, u2, u2} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (RingHomInvPair.ids.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHomInvPair.ids.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (Prod.{u2, u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.setLike.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p))) V (Prod.instAddCommMonoidSum.{u2, u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.setLike.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p)) (AddCommGroup.toAddCommMonoid.{u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p)) (Submodule.addCommMonoid.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (Prod.module.{u1, u2, u2} K (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.setLike.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p)) (Submodule.addCommMonoid.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p) (Submodule.Quotient.module.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p) (Submodule.module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p)) _inst_4)
 Case conversion may be inaccurate. Consider using '#align quotient_prod_linear_equiv quotient_prod_linearEquivₓ'. -/
 theorem quotient_prod_linearEquiv (p : Submodule K V) : Nonempty (((V ⧸ p) × p) ≃ₗ[K] V) :=
   let ⟨q, hq⟩ := p.exists_isCompl
Diff
@@ -1324,7 +1324,7 @@ theorem Basis.eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N :
   cases i
   simp only [Function.const_apply, Fin.default_eq_zero, Submodule.coe_mk, Finset.univ_unique,
     Function.comp_const, Finset.sum_singleton] at sum_eq
-  convert (b.smul_eq_zero.mp sum_eq).resolve_right x_ne
+  convert(b.smul_eq_zero.mp sum_eq).resolve_right x_ne
 #align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zero
 
 end NoZeroSMulDivisors
@@ -1474,7 +1474,7 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (x i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_symm_apply Basis.equivFun_symm_applyₓ'. -/
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
@@ -1487,7 +1487,7 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
@@ -1498,7 +1498,7 @@ theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u4, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.equivFun.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u2, u2, u2, u4, u3, max u1 u2} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.symm.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) f) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
+  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 Case conversion may be inaccurate. Consider using '#align basis.map_equiv_fun Basis.map_equivFunₓ'. -/
 @[simp]
 theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
@@ -1509,7 +1509,7 @@ theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.tr
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
 Case conversion may be inaccurate. Consider using '#align basis.sum_equiv_fun Basis.sum_equivFunₓ'. -/
 theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
   by
@@ -1531,7 +1531,7 @@ theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u1} ι] (i : ι) (j : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_self Basis.equivFun_selfₓ'. -/
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
@@ -1569,7 +1569,7 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12075 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
 Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
@@ -1581,7 +1581,7 @@ theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u1, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u1 u2} (ι -> R) 0 (OfNat.mk.{max u1 u2} (ι -> R) 0 (Zero.zero.{max u1 u2} (ι -> R) (Pi.instZero.{u1, u2} ι (fun (a : ι) => R) (fun (i : ι) => MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12148 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_equiv_fun Basis.coe_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
@@ -1615,7 +1615,7 @@ variable [SMulCommClass R S M']
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_7 : Semiring.{u5} S] [_inst_8 : Module.{u5, u4} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_7)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_7) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u4, u1} M' ι _inst_4 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
@@ -1642,7 +1642,7 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11179 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
@@ -1931,7 +1931,7 @@ end Span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15499 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15485 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15517 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15503 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
@@ -1965,7 +1965,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15919 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15937 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
@@ -1977,7 +1977,7 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16025 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16011 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16043 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16029 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
@@ -2367,7 +2367,7 @@ Case conversion may be inaccurate. Consider using '#align basis.of_vector_space_
 theorem ofVectorSpaceIndex.linearIndependent :
     LinearIndependent K (coe : ofVectorSpaceIndex K V → V) :=
   by
-  convert (of_vector_space K V).LinearIndependent
+  convert(of_vector_space K V).LinearIndependent
   ext x
   rw [of_vector_space_apply_self]
 #align basis.of_vector_space_index.linear_independent Basis.ofVectorSpaceIndex.linearIndependent
Diff
@@ -221,7 +221,7 @@ theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) v) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_apply Basis.repr_symm_applyₓ'. -/
 @[simp]
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
@@ -248,7 +248,7 @@ theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)) v
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
 Case conversion may be inaccurate. Consider using '#align basis.repr_total Basis.repr_totalₓ'. -/
 @[simp]
 theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
@@ -261,7 +261,7 @@ theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
 Case conversion may be inaccurate. Consider using '#align basis.total_repr Basis.total_reprₓ'. -/
 @[simp]
 theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
@@ -325,7 +325,7 @@ def coord : M →ₗ[R] R :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) (Eq.{succ u3} M x (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) x) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) x) 0 (Zero.toOfNat0.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) x) (MonoidWithZero.toZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) x) (Semiring.toMonoidWithZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) x) _inst_1))))) (Eq.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) x) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) x) 0 (Zero.toOfNat0.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) x) (MonoidWithZero.toZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) x) (Semiring.toMonoidWithZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) x) _inst_1))))) (Eq.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)))))
 Case conversion may be inaccurate. Consider using '#align basis.forall_coord_eq_zero_iff Basis.forall_coord_eq_zero_iffₓ'. -/
 theorem forall_coord_eq_zero_iff {x : M} : (∀ i, b.Coord i x = 0) ↔ x = 0 :=
   Iff.trans (by simp only [b.coord_apply, Finsupp.ext_iff, Finsupp.zero_apply])
@@ -343,7 +343,7 @@ noncomputable def sumCoords : M →ₗ[R] R :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u2, u2} ι R R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u2} R))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u3, u3} ι R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u3} R))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u3, u3} ι R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u3} R))
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords Basis.coe_sumCoordsₓ'. -/
 @[simp]
 theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i => id :=
@@ -354,7 +354,7 @@ theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u2, succ u1} R ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) m))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u3, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) m) ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) m) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) m) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) m) _inst_1))) (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) m))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u3, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) m) ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) m) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) m) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) m) _inst_1))) (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) m))
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords_eq_finsum Basis.coe_sumCoords_eq_finsumₓ'. -/
 theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b.Coord i m :=
   by
@@ -369,7 +369,7 @@ theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι], Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finset.sum.{max u3 u2, u1} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) ι (Pi.addCommMonoid.{u3, u2} M (fun (ᾰ : M) => R) (fun (i : M) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i)))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u3} ι], Eq.{max (succ u2) (succ u1)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) a) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.sum.{max u2 u1, u3} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) ι (LinearMap.addCommMonoid.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i)))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u3} ι], Eq.{max (succ u2) (succ u1)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) a) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.sum.{max u2 u1, u3} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) ι (LinearMap.addCommMonoid.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords_of_fintype Basis.coe_sumCoords_of_fintypeₓ'. -/
 @[simp]
 theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i, b.Coord i :=
@@ -383,7 +383,7 @@ theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i,
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) _inst_1)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) _inst_1)))
 Case conversion may be inaccurate. Consider using '#align basis.sum_coords_self_apply Basis.sumCoords_self_applyₓ'. -/
 @[simp]
 theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
@@ -395,7 +395,7 @@ theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.Dvd.{u2} R (semigroupDvd.{u2} R (SemigroupWithZero.toSemigroup.{u2} R (NonUnitalSemiring.toSemigroupWithZero.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1)))) r (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) r m))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.dvd.{u3} R (semigroupDvd.{u3} R (SemigroupWithZero.toSemigroup.{u3} R (NonUnitalSemiring.toSemigroupWithZero.{u3} R (Semiring.toNonUnitalSemiring.{u3} R _inst_1)))) r (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) r m))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.dvd.{u3} R (semigroupDvd.{u3} R (SemigroupWithZero.toSemigroup.{u3} R (NonUnitalSemiring.toSemigroupWithZero.{u3} R (Semiring.toNonUnitalSemiring.{u3} R _inst_1)))) r (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) r m))
 Case conversion may be inaccurate. Consider using '#align basis.dvd_coord_smul Basis.dvd_coord_smulₓ'. -/
 theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
   ⟨b.Coord i m, by simp⟩
@@ -405,7 +405,7 @@ theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) f i)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) f i)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_repr_symm Basis.coord_repr_symmₓ'. -/
 theorem coord_repr_symm (b : Basis ι R M) (i : ι) (f : ι →₀ R) : b.Coord i (b.repr.symm f) = f i :=
   by simp only [repr_symm_apply, coord_apply, repr_total]
@@ -425,7 +425,7 @@ variable {M₁ : Type _} [AddCommMonoid M₁] [Module R₁ M₁]
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u2, u4} R R₁ (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u5}} [_inst_9 : AddCommMonoid.{u5} M₁] [_inst_10 : Module.{u4, u5} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u5} M₁ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 Case conversion may be inaccurate. Consider using '#align basis.ext Basis.extₓ'. -/
 /-- Two linear maps are equal if they are equal on basis vectors. -/
 theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
@@ -441,7 +441,7 @@ include σ'
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u2, u4} R R₁ (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {σ' : RingHom.{u4, u2} R₁ R (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6) (Semiring.toNonAssocSemiring.{u2} R _inst_1)} [_inst_7 : RingHomInvPair.{u2, u4} R R₁ _inst_1 _inst_6 σ σ'] [_inst_8 : RingHomInvPair.{u4, u2} R₁ R _inst_6 _inst_1 σ' σ] {M₁ : Type.{u5}} [_inst_9 : AddCommMonoid.{u5} M₁] [_inst_10 : Module.{u4, u5} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u5} M₁ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearEquiv.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8) f₁ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearEquiv.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8) f₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {σ' : RingHom.{u4, u5} R₁ R (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6) (Semiring.toNonAssocSemiring.{u5} R _inst_1)} [_inst_7 : RingHomInvPair.{u5, u4} R R₁ _inst_1 _inst_6 σ σ'] [_inst_8 : RingHomInvPair.{u4, u5} R₁ R _inst_6 _inst_1 σ' σ] {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {σ' : RingHom.{u4, u5} R₁ R (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6) (Semiring.toNonAssocSemiring.{u5} R _inst_1)} [_inst_7 : RingHomInvPair.{u5, u4} R R₁ _inst_1 _inst_6 σ σ'] [_inst_8 : RingHomInvPair.{u4, u5} R₁ R _inst_6 _inst_1 σ' σ] {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
 Case conversion may be inaccurate. Consider using '#align basis.ext' Basis.ext'ₓ'. -/
 /-- Two linear equivs are equal if they are equal on basis vectors. -/
 theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
@@ -477,7 +477,7 @@ alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff Basis.repr_eq_iffₓ'. -/
 theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
     ↑b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
@@ -509,7 +509,7 @@ theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u1 u2} (ι -> R) (Pi.instAdd.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (SMul.smul.{u2, max u1 u2} R (ι -> R) (Function.hasSMul.{u1, u2, u2} ι R R (Mul.toSMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))) -> (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u3 u2} (ι -> R) (Pi.instAdd.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u2, u1} R M _inst_1 _inst_2 _inst_3))))) c x)) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (ι -> R) (ι -> R) (instHSMul.{u2, max u3 u2} R (ι -> R) (Pi.instSMul.{u3, u2, u2} ι R (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.3609 : ι) => R) (fun (i : ι) => SMulZeroClass.toSMul.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MulZeroClass.toSMulWithZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))) -> (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u3 u2} (ι -> R) (Pi.instAdd.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u2, u1} R M _inst_1 _inst_2 _inst_3))))) c x)) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (ι -> R) (ι -> R) (instHSMul.{u2, max u3 u2} R (ι -> R) (Pi.instSMul.{u3, u2, u2} ι R (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.3680 : ι) => R) (fun (i : ι) => SMulZeroClass.toSMul.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MulZeroClass.toSMulWithZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))) -> (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_apply_eq Basis.repr_apply_eqₓ'. -/
 /-- An unbundled version of `repr_eq_iff` -/
 theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f y)
@@ -598,7 +598,7 @@ attribute [local instance] SMul.comp.isScalarTower
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u4, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M M (instHSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (SMulZeroClass.toSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (MonoidWithZero.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u2) (succ u4), succ u2, succ u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') _x) (MulHomClass.toFunLike.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3))))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u4, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M M (instHSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (SMulZeroClass.toSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (MonoidWithZero.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u2) (succ u4), succ u2, succ u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') _x) (MulHomClass.toFunLike.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3))))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
 Case conversion may be inaccurate. Consider using '#align basis.map_coeffs Basis.mapCoeffsₓ'. -/
 /-- If `R` and `R'` are isomorphic rings that act identically on a module `M`,
 then a basis for `M` as `R`-module is also a basis for `M` as `R'`-module.
@@ -621,7 +621,7 @@ def mapCoeffs : Basis ι R' M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u4} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u4} M (HSMul.hSMul.{u2, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M M (instHSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u4, u4} R M M (instHSMul.{u1, u4} R M (SMulZeroClass.toSMul.{u1, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u4} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u4} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u1, u4} R M _inst_1 _inst_2 _inst_3))))) c x)) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u3, succ u4} (Basis.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u3, u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, succ u4} (Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) b i)
+  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u4} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u4} M (HSMul.hSMul.{u2, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M M (instHSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u4, u4} R M M (instHSMul.{u1, u4} R M (SMulZeroClass.toSMul.{u1, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u4} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u4} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u1, u4} R M _inst_1 _inst_2 _inst_3))))) c x)) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u3, succ u4} (Basis.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u3, u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, succ u4} (Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) b i)
 Case conversion may be inaccurate. Consider using '#align basis.map_coeffs_apply Basis.mapCoeffs_applyₓ'. -/
 theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
   apply_eq_iff.mpr <| by simp [f.to_add_equiv_eq_coe]
@@ -631,7 +631,7 @@ theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)
 but is expected to have type
-  forall {ι : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u2, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M M (instHSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_2 _inst_3))))) c x)), Eq.{max (succ u4) (succ u3)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u3} (Basis.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u4, u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u3), succ u4, succ u3} (Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)
+  forall {ι : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u2, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M M (instHSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_2 _inst_3))))) c x)), Eq.{max (succ u4) (succ u3)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u3} (Basis.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u4, u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u3), succ u4, succ u3} (Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)
 Case conversion may be inaccurate. Consider using '#align basis.coe_map_coeffs Basis.coe_mapCoeffsₓ'. -/
 @[simp]
 theorem coe_mapCoeffs : (b.mapCoeffs f h : ι → M) = b :=
@@ -657,7 +657,7 @@ def reindex : Basis ι' R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u4} M (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) i') (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) i') (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
 Case conversion may be inaccurate. Consider using '#align basis.reindex_apply Basis.reindex_applyₓ'. -/
 theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
   show
@@ -670,7 +670,7 @@ theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u4)} ((fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u2, succ u1, succ u4} ι' ι M (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e)))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} (forall (a : ι'), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) a) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u4, u2, u3} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u4, succ u1, succ u3} ι' ι M (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u4} ι ι' e)))
+  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} (forall (a : ι'), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) a) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u4, u2, u3} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u4, succ u1, succ u3} ι' ι M (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u4} ι ι' e)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_reindex Basis.coe_reindexₓ'. -/
 @[simp]
 theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
@@ -681,7 +681,7 @@ theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u3} R (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.coeFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u4}} {M : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u4, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) i') (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u3 u4, max (max u3 u4) u2} R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u3 u4, max (max u3 u4) u2} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u3 u4} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u3, u4, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u3, u4, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u4)) (succ u2), succ u2, max (succ u1) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u1 u4, max (max u1 u4) u2} R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u1 u4, max (max u1 u4) u2} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u1 u4} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u4}} {M : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u4, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) i') (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u3 u4, max (max u3 u4) u2} R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u3 u4, max (max u3 u4) u2} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u3 u4} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u3, u4, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u3, u4, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u4)) (succ u2), succ u2, max (succ u1) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u1 u4, max (max u1 u4) u2} R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u1 u4, max (max u1 u4) u2} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u1 u4} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
 Case conversion may be inaccurate. Consider using '#align basis.repr_reindex_apply Basis.repr_reindex_applyₓ'. -/
 theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.symm i') :=
   show (Finsupp.domLCongr e : _ ≃ₗ[R] _) (b.repr x) i' = _ by simp
@@ -691,7 +691,7 @@ theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.sy
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u2, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) x) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u2, max (succ u4) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u4 u3, max (max u4 u3) u2} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u4 u3, max (max u4 u3) u2} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u4 u3} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u4, u3, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u4, u3, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u4, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} ι ι') e) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) x))
+  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) x) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u2, max (succ u4) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u4 u3, max (max u4 u3) u2} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u4 u3, max (max u4 u3) u2} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u4 u3} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u4, u3, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u4, u3, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u4, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} ι ι') e) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) x))
 Case conversion may be inaccurate. Consider using '#align basis.repr_reindex Basis.repr_reindexₓ'. -/
 @[simp]
 theorem repr_reindex : (b.reindex e).repr x = (b.repr x).mapDomain e :=
@@ -1013,7 +1013,7 @@ def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M'
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u2, u2, u2, u3, max u4 u2, u4} R R R M (Finsupp.{u4, u2} M' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u4, u4, u2} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u2, u2, u2, u3, max u1 u2, max u4 u2} R R R M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (Finsupp.{u4, u2} M' R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.lmapDomain.{u1, u2, u2, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) M' f) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u5) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), max (succ u2) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u5 u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u5, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u3, u3, u3, u5, max u3 u4, u4} R R R M (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.total.{u4, u4, u3} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u3, u3, u3, u5, max u3 u2, max u3 u4} R R R M (Finsupp.{u2, u3} ι R (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.lmapDomain.{u2, u3, u3, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1) M' f) (LinearEquiv.toLinearMap.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b))))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u5) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), max (succ u2) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u5 u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u5, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u3, u3, u3, u5, max u3 u4, u4} R R R M (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.total.{u4, u4, u3} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u3, u3, u3, u5, max u3 u2, max u3 u4} R R R M (Finsupp.{u2, u3} ι R (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.lmapDomain.{u2, u3, u3, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1) M' f) (LinearEquiv.toLinearMap.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b))))
 Case conversion may be inaccurate. Consider using '#align basis.constr_def Basis.constr_defₓ'. -/
 theorem constr_def (f : ι → M') :
     b.constr S f = Finsupp.total M' M' R id ∘ₗ Finsupp.lmapDomain R R f ∘ₗ ↑b.repr :=
@@ -1024,7 +1024,7 @@ theorem constr_def (f : ι → M') :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u1, u2, u4} ι R M' (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) a (f b)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply Basis.constr_applyₓ'. -/
 theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum fun b a => a • f b :=
   by
@@ -1036,7 +1036,7 @@ theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum f
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (f i)
 but is expected to have type
-  forall {ι : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), max (succ u4) (succ u5), max (succ u2) (succ u5)} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u4 u5} S (ι -> M') (AddMonoid.toZero.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u4 u5, max u2 u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u4, u3, u2, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (f i)
+  forall {ι : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), max (succ u4) (succ u5), max (succ u2) (succ u5)} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u4 u5} S (ι -> M') (AddMonoid.toZero.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u4 u5, max u2 u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u4, u3, u2, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.constr_basis Basis.constr_basisₓ'. -/
 @[simp]
 theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i) = f i := by
@@ -1047,7 +1047,7 @@ theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u4} M' (g i) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u3} M' (g i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) g) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u3} M' (g i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) g) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
 Case conversion may be inaccurate. Consider using '#align basis.constr_eq Basis.constr_eqₓ'. -/
 theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)) : b.constr S g = f :=
   b.ext fun i => (b.constr_basis S g i).trans (h i)
@@ -1057,7 +1057,7 @@ theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) f
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) f
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) f
 Case conversion may be inaccurate. Consider using '#align basis.constr_self Basis.constr_selfₓ'. -/
 theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
   b.constr_eq S fun x => rfl
@@ -1067,7 +1067,7 @@ theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u1} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u2, u2, u3, u4, max u3 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u2, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u1} M' ι f))
 but is expected to have type
-  forall {ι : Type.{u5}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u5, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u5} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u3, u3, u2, u4, max u2 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (LinearMap.instSemilinearMapClassLinearMap.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomSurjective.ids.{u3} R _inst_1) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u4), max (succ u5) (succ u4), max (succ u2) (succ u4)} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u5 u4} S (ι -> M') (AddMonoid.toZero.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u5 u4, max u2 u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u5, u3, u2, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u3, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u5} M' ι f))
+  forall {ι : Type.{u5}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u5, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u5} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u3, u3, u2, u4, max u2 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (LinearMap.instSemilinearMapClassLinearMap.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomSurjective.ids.{u3} R _inst_1) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u4), max (succ u5) (succ u4), max (succ u2) (succ u4)} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u5 u4} S (ι -> M') (AddMonoid.toZero.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u5 u4, max u2 u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u5, u3, u2, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u3, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u5} M' ι f))
 Case conversion may be inaccurate. Consider using '#align basis.constr_range Basis.constr_rangeₓ'. -/
 theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span R (range f) := by
   rw [b.constr_def S f, LinearMap.range_comp, LinearMap.range_comp, LinearEquiv.range, ←
@@ -1079,7 +1079,7 @@ theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u1, succ u4, succ u4} ι M' M' (coeFn.{succ u4, succ u4} (LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (fun (_x : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) => M' -> M') (LinearMap.hasCoeToFun.{u2, u2, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f) v)) (LinearMap.comp.{u2, u2, u2, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u5, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u4} R S M' (SMulZeroClass.toSMul.{u5, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u4} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u4} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u5, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (a : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M') => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M') => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (LinearMap.comp.{u5, u5, u5, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHomCompTriple.ids.{u5, u5} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u5, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u4} R S M' (SMulZeroClass.toSMul.{u5, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u4} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u4} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u5, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (a : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (LinearMap.comp.{u5, u5, u5, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHomCompTriple.ids.{u5, u5} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
 Case conversion may be inaccurate. Consider using '#align basis.constr_comp Basis.constr_compₓ'. -/
 @[simp]
 theorem constr_comp (f : M' →ₗ[R] M') (v : ι → M') : b.constr S (f ∘ v) = f.comp (b.constr S v) :=
@@ -1106,7 +1106,7 @@ protected def equiv : M ≃ₗ[R] M' :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{succ u5} M' (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b' (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e i))
 but is expected to have type
-  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u4, succ u1} ι ι'), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equiv.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι ι') e i))
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u4, succ u1} ι ι'), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equiv.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι ι') e i))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_apply Basis.equiv_applyₓ'. -/
 @[simp]
 theorem equiv_apply : b.Equiv b' e (b i) = b' (e i) := by simp [Basis.equiv]
@@ -1263,7 +1263,7 @@ theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u1, u2} ι ι'), Eq.{max (succ u4) (succ u5)} (Prod.{u4, u5} M M') (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u1, u2, max (succ u4) (succ u5)} ι ι' (Prod.{u4, u5} M M') (Function.comp.{succ u1, succ u4, max (succ u4) (succ u5)} ι M (Prod.{u4, u5} M M') (coeFn.{max (succ u4) (succ (max u4 u5)), max (succ u4) (succ (max u4 u5))} (LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u4, max u4 u5} R R M (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inl.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b)) (Function.comp.{succ u2, succ u5, max (succ u4) (succ u5)} ι' M' (Prod.{u4, u5} M M') (coeFn.{max (succ u5) (succ (max u4 u5)), max (succ u5) (succ (max u4 u5))} (LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M' -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u5, max u4 u5} R R M' (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inr.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b')) i)
 but is expected to have type
-  forall {ι : Type.{u5}} {ι' : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u1, u2} R M' _inst_1 _inst_4] (b : Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u5, u4} ι ι'), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') i) (FunLike.coe.{max (max (max (max (succ u5) (succ u4)) (succ u1)) (succ u3)) (succ u2), max (succ u5) (succ u4), max (succ u3) (succ u2)} (Basis.{max u4 u5, u1, max u2 u3} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u5, u4} ι ι') (fun (_x : Sum.{u5, u4} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') _x) (Basis.funLike.{max u5 u4, u1, max u3 u2} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u5, u4, u1, u3, u2} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u5, u4, max (succ u3) (succ u2)} ι ι' (Prod.{u3, u2} M M') (Function.comp.{succ u5, succ u3, max (succ u3) (succ u2)} ι M (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u3, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (Prod.{u3, u2} M M') _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u3, max u3 u2} R R M (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inl.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u5) (succ u1)) (succ u3), succ u5, succ u3} (Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (Function.comp.{succ u4, succ u2, max (succ u3) (succ u2)} ι' M' (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u2, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M' (Prod.{u3, u2} M M') _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M') => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, max u3 u2} R R M' (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inr.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u2), succ u4, succ u2} (Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) b')) i)
+  forall {ι : Type.{u5}} {ι' : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u1, u2} R M' _inst_1 _inst_4] (b : Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u5, u4} ι ι'), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') i) (FunLike.coe.{max (max (max (max (succ u5) (succ u4)) (succ u1)) (succ u3)) (succ u2), max (succ u5) (succ u4), max (succ u3) (succ u2)} (Basis.{max u4 u5, u1, max u2 u3} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u5, u4} ι ι') (fun (_x : Sum.{u5, u4} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') _x) (Basis.funLike.{max u5 u4, u1, max u3 u2} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u5, u4, u1, u3, u2} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u5, u4, max (succ u3) (succ u2)} ι ι' (Prod.{u3, u2} M M') (Function.comp.{succ u5, succ u3, max (succ u3) (succ u2)} ι M (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u3, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (Prod.{u3, u2} M M') _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u3, max u3 u2} R R M (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inl.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u5) (succ u1)) (succ u3), succ u5, succ u3} (Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (Function.comp.{succ u4, succ u2, max (succ u3) (succ u2)} ι' M' (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u2, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M' (Prod.{u3, u2} M M') _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M') => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, max u3 u2} R R M' (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inr.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u2), succ u4, succ u2} (Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) b')) i)
 Case conversion may be inaccurate. Consider using '#align basis.prod_apply Basis.prod_applyₓ'. -/
 @[simp]
 theorem prod_apply (i) :
@@ -1474,7 +1474,7 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (x i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_symm_apply Basis.equivFun_symm_applyₓ'. -/
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
@@ -1487,7 +1487,7 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
@@ -1498,7 +1498,7 @@ theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u4, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.equivFun.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u2, u2, u2, u4, u3, max u1 u2} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.symm.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) f) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
+  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 Case conversion may be inaccurate. Consider using '#align basis.map_equiv_fun Basis.map_equivFunₓ'. -/
 @[simp]
 theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
@@ -1509,7 +1509,7 @@ theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.tr
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
 Case conversion may be inaccurate. Consider using '#align basis.sum_equiv_fun Basis.sum_equivFunₓ'. -/
 theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
   by
@@ -1531,7 +1531,7 @@ theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u1} ι] (i : ι) (j : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_self Basis.equivFun_selfₓ'. -/
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
@@ -1569,7 +1569,7 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12057 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
 Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
@@ -1581,7 +1581,7 @@ theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u1, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u1 u2} (ι -> R) 0 (OfNat.mk.{max u1 u2} (ι -> R) 0 (Zero.zero.{max u1 u2} (ι -> R) (Pi.instZero.{u1, u2} ι (fun (a : ι) => R) (fun (i : ι) => MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.12130 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_equiv_fun Basis.coe_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
@@ -1615,7 +1615,7 @@ variable [SMulCommClass R S M']
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_7 : Semiring.{u5} S] [_inst_8 : Module.{u5, u4} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_7)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_7) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u4, u1} M' ι _inst_4 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7820 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
@@ -1642,7 +1642,7 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11161 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
@@ -1810,7 +1810,7 @@ protected noncomputable def mk : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
@@ -1844,7 +1844,7 @@ variable {hli hsp}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v i)) (NonAssocRing.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v i)) (Ring.toNonAssocRing.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v i)) _inst_1))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (NonAssocRing.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) (Ring.toNonAssocRing.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v i)) _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_eq Basis.mk_coord_apply_eqₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 1 on the `i`th element of the
 basis. -/
@@ -1856,7 +1856,7 @@ theorem mk_coord_apply_eq (i : ι) : (Basis.mk hli hsp).Coord i (v i) = 1 :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} {i : ι} {j : ι}, (Ne.{succ u1} ι j i) -> (Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} {i : ι} {j : ι}, (Ne.{succ u3} ι j i) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) _inst_1))))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} {i : ι} {j : ι}, (Ne.{succ u3} ι j i) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_ne Basis.mk_coord_apply_neₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 0 on the `j`th element of the
 basis if `j ≠ i`. -/
@@ -1869,7 +1869,7 @@ theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} [_inst_10 : DecidableEq.{succ u1} ι] {i : ι} {j : ι}, Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} R (Eq.{succ u1} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) _inst_1))))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => R) (v j)) _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply Basis.mk_coord_applyₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to the Kronecker delta on the
 `j`th element of the basis. -/
@@ -1931,7 +1931,7 @@ end Span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15188 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15174 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15499 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15485 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
@@ -1965,7 +1965,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15608 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15919 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
@@ -1977,7 +1977,7 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15712 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15698 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16025 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.16011 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
@@ -2011,7 +2011,7 @@ theorem unitsSmul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_s
 lean 3 declaration is
   forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (i : ι), Eq.{max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSmul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (SMul.smul.{u2, max u3 u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.hasSmul.{u2, u2, u2, u3, u2} R₂ R₂ (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (DivInvMonoid.toMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Group.toDivInvMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.group.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.distribMulAction.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toAddCommGroup.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.smulCommClass_right.{u2, u2, u2} R₂ R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (SMulZeroClass.toHasSmul.{u2, u2} R₂ R₂ (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (SMulWithZero.toSmulZeroClass.{u2, u2} R₂ R₂ (MulZeroClass.toHasZero.{u2} R₂ (MulZeroOneClass.toMulZeroClass.{u2} R₂ (MonoidWithZero.toMulZeroOneClass.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (MulActionWithZero.toSMulWithZero.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Module.toMulActionWithZero.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (Monoid.toMulAction.{u2} R₂ (CommMonoid.toMonoid.{u2} R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2)))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SMulZeroClass.toSMul.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.instZeroLinearMap.{u2, u2, u1, u2} R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulWithZero.toSMulZeroClass.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (LinearMap.instZeroLinearMap.{u2, u2, u1, u2} R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MulActionWithZero.toSMulWithZero.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearMap.instZeroLinearMap.{u2, u2, u1, u2} R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Module.toMulActionWithZero.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (LinearMap.addCommMonoid.{u2, u2, u1, u2} R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInvUnits.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInvUnits.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
 Case conversion may be inaccurate. Consider using '#align basis.coord_units_smul Basis.coord_unitsSmulₓ'. -/
 @[simp]
 theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
@@ -2123,7 +2123,7 @@ noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (yO : Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hNO : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (Submodule.ofLe.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N O hNO)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLeₓ'. -/
 @[simp]
 theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
Diff
@@ -598,7 +598,7 @@ attribute [local instance] SMul.comp.isScalarTower
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u4, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M M (instHSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (SMulZeroClass.toSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (MonoidWithZero.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u2) (succ u4), succ u2, succ u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') _x) (MulHomClass.toFunLike.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3))))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u4, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M M (instHSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (SMulZeroClass.toSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (MonoidWithZero.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u2) (succ u4), succ u2, succ u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') _x) (MulHomClass.toFunLike.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3))))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
 Case conversion may be inaccurate. Consider using '#align basis.map_coeffs Basis.mapCoeffsₓ'. -/
 /-- If `R` and `R'` are isomorphic rings that act identically on a module `M`,
 then a basis for `M` as `R`-module is also a basis for `M` as `R'`-module.
@@ -621,7 +621,7 @@ def mapCoeffs : Basis ι R' M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u4} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u4} M (HSMul.hSMul.{u2, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M M (instHSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u4, u4} R M M (instHSMul.{u1, u4} R M (SMulZeroClass.toSMul.{u1, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u4} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u4} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u1, u4} R M _inst_1 _inst_2 _inst_3))))) c x)) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u3, succ u4} (Basis.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u3, u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, succ u4} (Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) b i)
+  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u4} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u4} M (HSMul.hSMul.{u2, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M M (instHSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u4, u4} R M M (instHSMul.{u1, u4} R M (SMulZeroClass.toSMul.{u1, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u4} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u4} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u1, u4} R M _inst_1 _inst_2 _inst_3))))) c x)) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u3, succ u4} (Basis.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u3, u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, succ u4} (Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) b i)
 Case conversion may be inaccurate. Consider using '#align basis.map_coeffs_apply Basis.mapCoeffs_applyₓ'. -/
 theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
   apply_eq_iff.mpr <| by simp [f.to_add_equiv_eq_coe]
@@ -631,7 +631,7 @@ theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)
 but is expected to have type
-  forall {ι : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u2, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M M (instHSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_2 _inst_3))))) c x)), Eq.{max (succ u4) (succ u3)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u3} (Basis.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u4, u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u3), succ u4, succ u3} (Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)
+  forall {ι : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u2, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M M (instHSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_2 _inst_3))))) c x)), Eq.{max (succ u4) (succ u3)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u3} (Basis.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u4, u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u3), succ u4, succ u3} (Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)
 Case conversion may be inaccurate. Consider using '#align basis.coe_map_coeffs Basis.coe_mapCoeffsₓ'. -/
 @[simp]
 theorem coe_mapCoeffs : (b.mapCoeffs f h : ι → M) = b :=
Diff
@@ -126,7 +126,7 @@ section repr
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], Function.Injective.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ (max u1 u2))} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2], Function.Injective.{max (max (succ u3) (succ u2)) (succ u1), max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2], Function.Injective.{max (max (succ u3) (succ u2)) (succ u1), max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3)
 Case conversion may be inaccurate. Consider using '#align basis.repr_injective Basis.repr_injectiveₓ'. -/
 theorem repr_injective : Injective (repr : Basis ι R M → M ≃ₗ[R] ι →₀ R) := fun f g h => by
   cases f <;> cases g <;> congr
@@ -155,7 +155,7 @@ instance funLike : FunLike (Basis ι R M) ι fun _ => M
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.of_repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (e : LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))), Eq.{max (succ u1) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (Basis.of_repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u1) (succ u3), succ u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (_x : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u1 u3, u2, max (max u1 u3) u2} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u1 u3, u2, max (max u1 u3) u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u1 u3, u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) e) (Finsupp.single.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) i (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1)))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (e : LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))), Eq.{max (succ u1) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (Basis.of_repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u1) (succ u3), succ u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (_x : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u1 u3, u2, max (max u1 u3) u2} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u1 u3, u2, max (max u1 u3) u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u1 u3, u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) e) (Finsupp.single.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) i (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_repr Basis.coe_of_reprₓ'. -/
 @[simp]
 theorem coe_of_repr (e : M ≃ₗ[R] ι →₀ R) : ⇑(of_repr e) = fun i => e.symm (Finsupp.single i 1) :=
@@ -176,7 +176,7 @@ protected theorem injective [Nontrivial R] : Injective b :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single_one Basis.repr_symm_single_oneₓ'. -/
 theorem repr_symm_single_one : b.repr.symm (Finsupp.single i 1) = b i :=
   rfl
@@ -186,7 +186,7 @@ theorem repr_symm_single_one : b.repr.symm (Finsupp.single i 1) = b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i c)) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) c (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) c (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single Basis.repr_symm_singleₓ'. -/
 theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
   calc
@@ -200,7 +200,7 @@ theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_self Basis.repr_selfₓ'. -/
 @[simp]
 theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
@@ -209,9 +209,9 @@ theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
 
 /- warning: basis.repr_self_apply -> Basis.repr_self_apply is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u1} ι i j)], Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) _inst_6 (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u1} ι i j)], Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) _inst_6 (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u3} ι i j)], Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) j) (ite.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Eq.{succ u3} ι i j) _inst_6 (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u3} ι i j)], Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) j) (ite.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Eq.{succ u3} ι i j) _inst_6 (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_self_apply Basis.repr_self_applyₓ'. -/
 theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then 1 else 0 := by
   rw [repr_self, Finsupp.single_apply]
@@ -221,7 +221,7 @@ theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) v) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
 Case conversion may be inaccurate. Consider using '#align basis.repr_symm_apply Basis.repr_symm_applyₓ'. -/
 @[simp]
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
@@ -237,7 +237,7 @@ theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) ((fun (a : Sort.{max (succ (max u1 u2)) (succ u3)}) (b : Sort.{max (succ (max u1 u2)) (succ u3)}) [self : HasLiftT.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} a b] => self.0) (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (HasLiftT.mk.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (CoeTCₓ.coe.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (coeBase.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearEquiv.LinearMap.hasCoe.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearEquiv.toLinearMap.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearEquiv.toLinearMap.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b))
 Case conversion may be inaccurate. Consider using '#align basis.coe_repr_symm Basis.coe_repr_symmₓ'. -/
 @[simp]
 theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
@@ -248,7 +248,7 @@ theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)) v
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
 Case conversion may be inaccurate. Consider using '#align basis.repr_total Basis.repr_totalₓ'. -/
 @[simp]
 theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
@@ -261,7 +261,7 @@ theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
 Case conversion may be inaccurate. Consider using '#align basis.total_repr Basis.total_reprₓ'. -/
 @[simp]
 theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
@@ -274,7 +274,7 @@ theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ (max u1 u2)} (Submodule.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.range.{u2, u2, u3, max u1 u2, max u3 u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.semilinearMapClass.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.supported.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) (Set.univ.{u1} ι))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (Submodule.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.range.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.supported.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) (Set.univ.{u3} ι))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (Submodule.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.range.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.supported.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) (Set.univ.{u3} ι))
 Case conversion may be inaccurate. Consider using '#align basis.repr_range Basis.repr_rangeₓ'. -/
 theorem repr_range : (b.repr : M →ₗ[R] ι →₀ R).range = Finsupp.supported R R univ := by
   rw [LinearEquiv.range, Finsupp.supported_univ]
@@ -284,7 +284,7 @@ theorem repr_range : (b.repr : M →ₗ[R] ι →₀ R).range = Finsupp.supporte
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
 Case conversion may be inaccurate. Consider using '#align basis.mem_span_repr_support Basis.mem_span_repr_supportₓ'. -/
 theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
     m ∈ span R (b '' (b.repr m).support) :=
@@ -295,7 +295,7 @@ theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
 lean 3 declaration is
   forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.hasSubset.{u3} ι) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
 but is expected to have type
-  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.instHasSubsetSet.{u3} ι) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.instHasSubsetSet.{u3} ι) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
 Case conversion may be inaccurate. Consider using '#align basis.repr_support_subset_of_mem_span Basis.repr_support_subset_of_mem_spanₓ'. -/
 theorem repr_support_subset_of_mem_span {ι : Type _} (b : Basis ι R M) (s : Set ι) {m : M}
     (hm : m ∈ span R (b '' s)) : ↑(b.repr m).support ⊆ s :=
@@ -343,7 +343,7 @@ noncomputable def sumCoords : M →ₗ[R] R :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u2, u2} ι R R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u2} R))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u3, u3} ι R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u3} R))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u3, u3} ι R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u3} R))
 Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords Basis.coe_sumCoordsₓ'. -/
 @[simp]
 theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i => id :=
@@ -403,9 +403,9 @@ theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
 
 /- warning: basis.coord_repr_symm -> Basis.coord_repr_symm is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) f i)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) f i)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) f i)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_repr_symm Basis.coord_repr_symmₓ'. -/
 theorem coord_repr_symm (b : Basis ι R M) (i : ι) (f : ι →₀ R) : b.Coord i (b.repr.symm f) = f i :=
   by simp only [repr_symm_apply, coord_apply, repr_total]
@@ -455,9 +455,9 @@ omit σ'
 
 /- warning: basis.ext_elem_iff -> Basis.ext_elem_iff is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
 Case conversion may be inaccurate. Consider using '#align basis.ext_elem_iff Basis.ext_elem_iffₓ'. -/
 /-- Two elements are equal iff their coordinates are equal. -/
 theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
@@ -466,9 +466,9 @@ theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
 
 /- warning: basis.ext_elem -> Basis.ext_elem is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
 Case conversion may be inaccurate. Consider using '#align basis.ext_elem Basis.ext_elemₓ'. -/
 alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 #align basis.ext_elem Basis.ext_elem
@@ -477,7 +477,7 @@ alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff Basis.repr_eq_iffₓ'. -/
 theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
     ↑b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
@@ -488,7 +488,7 @@ theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff' Basis.repr_eq_iff'ₓ'. -/
 theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
     b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
@@ -499,7 +499,7 @@ theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) x) (Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) x) (Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) x) (Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.apply_eq_iff Basis.apply_eq_iffₓ'. -/
 theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x = Finsupp.single i 1 :=
   ⟨fun h => h ▸ b.repr_self i, fun h => b.repr.Injective ((b.repr_self i).trans h.symm)⟩
@@ -507,9 +507,9 @@ theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x
 
 /- warning: basis.repr_apply_eq -> Basis.repr_apply_eq is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u1 u2} (ι -> R) (Pi.instAdd.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (SMul.smul.{u2, max u1 u2} R (ι -> R) (Function.hasSMul.{u1, u2, u2} ι R R (Mul.toSMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))) -> (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u1 u2} (ι -> R) (Pi.instAdd.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (SMul.smul.{u2, max u1 u2} R (ι -> R) (Function.hasSMul.{u1, u2, u2} ι R R (Mul.toSMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))) -> (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u3 u2} (ι -> R) (Pi.instAdd.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u2, u1} R M _inst_1 _inst_2 _inst_3))))) c x)) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (ι -> R) (ι -> R) (instHSMul.{u2, max u3 u2} R (ι -> R) (Pi.instSMul.{u3, u2, u2} ι R (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.3609 : ι) => R) (fun (i : ι) => SMulZeroClass.toSMul.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MulZeroClass.toSMulWithZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))) -> (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u3 u2} (ι -> R) (Pi.instAdd.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u2, u1} R M _inst_1 _inst_2 _inst_3))))) c x)) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (ι -> R) (ι -> R) (instHSMul.{u2, max u3 u2} R (ι -> R) (Pi.instSMul.{u3, u2, u2} ι R (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.3609 : ι) => R) (fun (i : ι) => SMulZeroClass.toSMul.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MulZeroClass.toSMulWithZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))) -> (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_apply_eq Basis.repr_apply_eqₓ'. -/
 /-- An unbundled version of `repr_eq_iff` -/
 theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f y)
@@ -535,9 +535,9 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
 
 /- warning: basis.eq_of_repr_eq_repr -> Basis.eq_of_repr_eq_repr is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b₁ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b₁ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
 Case conversion may be inaccurate. Consider using '#align basis.eq_of_repr_eq_repr Basis.eq_of_repr_eq_reprₓ'. -/
 /-- Two bases are equal if they assign the same coordinates. -/
 theorem eq_of_repr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
@@ -679,9 +679,9 @@ theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
 
 /- warning: basis.repr_reindex_apply -> Basis.repr_reindex_apply is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u3} R (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.hasCoeToFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u3} R (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.coeFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u4}} {M : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u4, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) i') (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u3 u4, max (max u3 u4) u2} R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u3 u4, max (max u3 u4) u2} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u3 u4} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u3, u4, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u3, u4, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u4)) (succ u2), succ u2, max (succ u1) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u1 u4, max (max u1 u4) u2} R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u1 u4, max (max u1 u4) u2} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u1 u4} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u4}} {M : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u4, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) i') (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u3 u4, max (max u3 u4) u2} R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u3 u4, max (max u3 u4) u2} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u3 u4} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u3, u4, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u3, u4, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u4)) (succ u2), succ u2, max (succ u1) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u1 u4, max (max u1 u4) u2} R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u1 u4, max (max u1 u4) u2} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u1 u4} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
 Case conversion may be inaccurate. Consider using '#align basis.repr_reindex_apply Basis.repr_reindex_applyₓ'. -/
 theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.symm i') :=
   show (Finsupp.domLCongr e : _ ≃ₗ[R] _) (b.repr x) i' = _ by simp
@@ -691,7 +691,7 @@ theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.sy
 lean 3 declaration is
   forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u2, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x))
 but is expected to have type
-  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) x) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u2, max (succ u4) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u4 u3, max (max u4 u3) u2} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u4 u3, max (max u4 u3) u2} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u4 u3} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u4, u3, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u4, u3, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u4, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} ι ι') e) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) x))
+  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) x) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u2, max (succ u4) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u4 u3, max (max u4 u3) u2} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u4 u3, max (max u4 u3) u2} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u4 u3} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u4, u3, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u4, u3, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u4, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} ι ι') e) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) x))
 Case conversion may be inaccurate. Consider using '#align basis.repr_reindex Basis.repr_reindexₓ'. -/
 @[simp]
 theorem repr_reindex : (b.reindex e).repr x = (b.repr x).mapDomain e :=
@@ -768,7 +768,7 @@ theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.mem_range_self.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.mem_range_self.{succ u1, u2} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.mem_range_self.{succ u1, u2} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr_self Basis.reindexRange_repr_selfₓ'. -/
 theorem reindexRange_repr_self (i : ι) :
     b.reindexRange.repr (b i) = Finsupp.single ⟨b i, mem_range_self i⟩ 1 :=
@@ -794,9 +794,9 @@ theorem reindexRange_apply (x : range b) : b.reindexRange x = x :=
 
 /- warning: basis.reindex_range_repr' -> Basis.reindexRange_repr' is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) bi), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.hasCoeToFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) bi (Exists.intro.{succ u1} ι (fun (y : ι) => Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b y) bi) i h))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) bi), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) bi (Exists.intro.{succ u1} ι (fun (y : ι) => Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b y) bi) i h))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) bi), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) bi), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr' Basis.reindexRange_repr'ₓ'. -/
 theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
     b.reindexRange.repr x ⟨bi, ⟨i, h⟩⟩ = b.repr x i :=
@@ -819,9 +819,9 @@ theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
 
 /- warning: basis.reindex_range_repr -> Basis.reindexRange_repr is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.range.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) (Set.mem_range_self.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) i)), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.hasCoeToFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.range.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) (Set.mem_range_self.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) i)), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr Basis.reindexRange_reprₓ'. -/
 @[simp]
 theorem reindexRange_repr (x : M) (i : ι) (h := Set.mem_range_self i) :
@@ -872,7 +872,7 @@ theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRang
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u2} M] (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.mem_image_of_mem.{u2, u1} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u2} M] (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.mem_image_of_mem.{u2, u1} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr_self Basis.reindexFinsetRange_repr_selfₓ'. -/
 theorem reindexFinsetRange_repr_self (i : ι) :
     b.reindexFinsetRange.repr (b i) =
@@ -886,9 +886,9 @@ theorem reindexFinsetRange_repr_self (i : ι) :
 
 /- warning: basis.reindex_finset_range_repr -> Basis.reindexFinsetRange_repr is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> R) (Finsupp.hasCoeToFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> R) (Finsupp.coeFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) _x) (Finsupp.funLike.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) _x) (Finsupp.funLike.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr Basis.reindexFinsetRange_reprₓ'. -/
 @[simp]
 theorem reindexFinsetRange_repr (x : M) (i : ι)
@@ -1013,7 +1013,7 @@ def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M'
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u2, u2, u2, u3, max u4 u2, u4} R R R M (Finsupp.{u4, u2} M' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u4, u4, u2} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u2, u2, u2, u3, max u1 u2, max u4 u2} R R R M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (Finsupp.{u4, u2} M' R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.lmapDomain.{u1, u2, u2, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) M' f) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u5) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), max (succ u2) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u5 u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u5, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u3, u3, u3, u5, max u3 u4, u4} R R R M (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_4 _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.total.{u4, u4, u3} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u3, u3, u3, u5, max u3 u2, max u3 u4} R R R M (Finsupp.{u2, u3} ι R (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.lmapDomain.{u2, u3, u3, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1) M' f) (LinearEquiv.toLinearMap.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b))))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u5) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), max (succ u2) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u5 u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u5, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u3, u3, u3, u5, max u3 u4, u4} R R R M (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.total.{u4, u4, u3} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u3, u3, u3, u5, max u3 u2, max u3 u4} R R R M (Finsupp.{u2, u3} ι R (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Finsupp.module.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.lmapDomain.{u2, u3, u3, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1) M' f) (LinearEquiv.toLinearMap.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b))))
 Case conversion may be inaccurate. Consider using '#align basis.constr_def Basis.constr_defₓ'. -/
 theorem constr_def (f : ι → M') :
     b.constr S f = Finsupp.total M' M' R id ∘ₗ Finsupp.lmapDomain R R f ∘ₗ ↑b.repr :=
@@ -1024,7 +1024,7 @@ theorem constr_def (f : ι → M') :
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u1, u2, u4} ι R M' (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) a (f b)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply Basis.constr_applyₓ'. -/
 theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum fun b a => a • f b :=
   by
@@ -1177,9 +1177,9 @@ protected def prod : Basis (Sum ι ι') R (M × M') :=
 
 /- warning: basis.prod_repr_inl -> Basis.prod_repr_inl is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u4, u5} M M') (i : ι), Eq.{succ u3} R (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => (Sum.{u1, u2} ι ι') -> R) (Finsupp.hasCoeToFun.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ (max u4 u5)) (succ (max (max u1 u2) u3)), max (succ (max u4 u5)) (succ (max (max u1 u2) u3))} (LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => (Prod.{u4, u5} M M') -> (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, max u4 u5, max (max u1 u2) u3} R R (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u1, u2} ι ι' i)) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u4, u5} M M' x)) i)
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u4, u5} M M') (i : ι), Eq.{succ u3} R (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => (Sum.{u1, u2} ι ι') -> R) (Finsupp.coeFun.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ (max u4 u5)) (succ (max (max u1 u2) u3)), max (succ (max u4 u5)) (succ (max (max u1 u2) u3))} (LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => (Prod.{u4, u5} M M') -> (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, max u4 u5, max (max u1 u2) u3} R R (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u1, u2} ι ι' i)) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u4, u5} M M' x)) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u5), succ u5, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u5} R M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u5} R M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u5} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, max u2 u3, max (max u2 u3) u5} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, max u2 u3, max (max u2 u3) u5} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u5, u4} M M' x)) i)
+  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u5), succ u5, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u5} R M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u5} R M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u5} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, max u2 u3, max (max u2 u3) u5} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, max u2 u3, max (max u2 u3) u5} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u5, u4} M M' x)) i)
 Case conversion may be inaccurate. Consider using '#align basis.prod_repr_inl Basis.prod_repr_inlₓ'. -/
 @[simp]
 theorem prod_repr_inl (x) (i) : (b.Prod b').repr x (Sum.inl i) = b.repr x.1 i :=
@@ -1188,9 +1188,9 @@ theorem prod_repr_inl (x) (i) : (b.Prod b').repr x (Sum.inl i) = b.repr x.1 i :=
 
 /- warning: basis.prod_repr_inr -> Basis.prod_repr_inr is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u4, u5} M M') (i : ι'), Eq.{succ u3} R (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => (Sum.{u1, u2} ι ι') -> R) (Finsupp.hasCoeToFun.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ (max u4 u5)) (succ (max (max u1 u2) u3)), max (succ (max u4 u5)) (succ (max (max u1 u2) u3))} (LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => (Prod.{u4, u5} M M') -> (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, max u4 u5, max (max u1 u2) u3} R R (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u1, u2} ι ι' i)) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.hasCoeToFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u5) (succ (max u2 u3)), max (succ u5) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M' -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u5, max u2 u3} R R M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u4, u5} M M' x)) i)
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u4, u5} M M') (i : ι'), Eq.{succ u3} R (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => (Sum.{u1, u2} ι ι') -> R) (Finsupp.coeFun.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ (max u4 u5)) (succ (max (max u1 u2) u3)), max (succ (max u4 u5)) (succ (max (max u1 u2) u3))} (LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => (Prod.{u4, u5} M M') -> (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, max u4 u5, max (max u1 u2) u3} R R (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u1, u2} ι ι' i)) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.coeFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u5) (succ (max u2 u3)), max (succ u5) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M' -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u5, max u2 u3} R R M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u4, u5} M M' x)) i)
 but is expected to have type
-  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι'), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u4, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u4} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u1 u3, max (max u1 u3) u4} R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u1 u3, max (max u1 u3) u4} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u1 u3} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u5, u4} M M' x)) i)
+  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι'), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u4, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u4} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u1 u3, max (max u1 u3) u4} R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u1 u3, max (max u1 u3) u4} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u1 u3} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u5, u4} M M' x)) i)
 Case conversion may be inaccurate. Consider using '#align basis.prod_repr_inr Basis.prod_repr_inrₓ'. -/
 @[simp]
 theorem prod_repr_inr (x) (i) : (b.Prod b').repr x (Sum.inr i) = b'.repr x.2 i :=
@@ -1357,9 +1357,9 @@ theorem singleton_apply (ι R : Type _) [Unique ι] [Semiring R] (i) : Basis.sin
 
 /- warning: basis.singleton_repr -> Basis.singleton_repr is a dubious translation:
 lean 3 declaration is
-  forall (ι : Type.{u1}) (R : Type.{u2}) [_inst_6 : Unique.{succ u1} ι] [_inst_7 : Semiring.{u2} R] (x : R) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u2, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7) R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) (fun (_x : LinearEquiv.{u2, u2, u2, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7) R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) => R -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u2, max u1 u2} R R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7)) (Basis.repr.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7) (Basis.singleton.{u1, u2} ι R _inst_6 _inst_7)) x) i) x
+  forall (ι : Type.{u1}) (R : Type.{u2}) [_inst_6 : Unique.{succ u1} ι] [_inst_7 : Semiring.{u2} R] (x : R) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u2, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7) R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) (fun (_x : LinearEquiv.{u2, u2, u2, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7) R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) => R -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u2, max u1 u2} R R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7)) (Basis.repr.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7) (Basis.singleton.{u1, u2} ι R _inst_6 _inst_7)) x) i) x
 but is expected to have type
-  forall (ι : Type.{u2}) (R : Type.{u1}) [_inst_6 : Unique.{succ u2} ι] [_inst_7 : Semiring.{u1} R] (x : R) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : R) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (SMulZeroClass.toSMul.{u1, u1} R R (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribSMul.toSMulZeroClass.{u1, u1} R R (AddMonoid.toAddZeroClass.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribMulAction.toDistribSMul.{u1, u1} R R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, max u2 u1, max u2 u1} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, max u2 u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7)))))) (Basis.repr.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7) (Basis.singleton.{u2, u1} ι R _inst_6 _inst_7)) x) i) x
+  forall (ι : Type.{u2}) (R : Type.{u1}) [_inst_6 : Unique.{succ u2} ι] [_inst_7 : Semiring.{u1} R] (x : R) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : R) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (SMulZeroClass.toSMul.{u1, u1} R R (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribSMul.toSMulZeroClass.{u1, u1} R R (AddMonoid.toAddZeroClass.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribMulAction.toDistribSMul.{u1, u1} R R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, max u2 u1, max u2 u1} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, max u2 u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.module.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7)))))) (Basis.repr.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7) (Basis.singleton.{u2, u1} ι R _inst_6 _inst_7)) x) i) x
 Case conversion may be inaccurate. Consider using '#align basis.singleton_repr Basis.singleton_reprₓ'. -/
 @[simp]
 theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
@@ -1485,9 +1485,9 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
 
 /- warning: basis.equiv_fun_apply -> Basis.equivFun_apply is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
@@ -1519,9 +1519,9 @@ theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
 
 /- warning: basis.sum_repr -> Basis.sum_repr is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
 Case conversion may be inaccurate. Consider using '#align basis.sum_repr Basis.sum_reprₓ'. -/
 theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
   b.sum_equivFun u
@@ -1540,9 +1540,9 @@ theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
 
 /- warning: basis.repr_sum_self -> Basis.repr_sum_self is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))))) c
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))))) c
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u3) (succ u2)} (forall (ᾰ : ι), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) ᾰ) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u1, u3} M ι _inst_2 (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))))) c
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u3) (succ u2)} (forall (ᾰ : ι), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) ᾰ) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u1, u3} M ι _inst_2 (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))))) c
 Case conversion may be inaccurate. Consider using '#align basis.repr_sum_self Basis.repr_sum_selfₓ'. -/
 theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) = c :=
   by
@@ -1567,9 +1567,9 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 
 /- warning: basis.of_equiv_fun_repr_apply -> Basis.ofEquivFun_repr_apply is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
 Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
@@ -1714,9 +1714,9 @@ theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι'
 
 /- warning: basis.sum_repr_mul_repr -> Basis.sum_repr_mul_repr is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : CommSemiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2] (b : Basis.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u2} R (Finset.sum.{u2, u4} R ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) (coeFn.{max (succ u4) (succ u2) (succ u3), max (succ u4) (succ u3)} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u4) (succ u2) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3)) b' j)) i) (coeFn.{max (succ u4) (succ u2), max (succ u4) (succ u2)} (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι' -> R) (Finsupp.hasCoeToFun.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u4 u2)), max (succ u3) (succ (max u4 u2))} (LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u4 u2} R R M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b') x) j))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : CommSemiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2] (b : Basis.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u2} R (Finset.sum.{u2, u4} R ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) (coeFn.{max (succ u4) (succ u2) (succ u3), max (succ u4) (succ u3)} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u4) (succ u2) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3)) b' j)) i) (coeFn.{max (succ u4) (succ u2), max (succ u4) (succ u2)} (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι' -> R) (Finsupp.coeFun.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u4 u2)), max (succ u3) (succ (max u4 u2))} (LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u4 u2} R R M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b') x) j))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.coeFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) x) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] (b : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Finset.sum.{u3, u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u3, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) j) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (instHMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonUnitalNonAssocSemiring.toMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1))))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u4, succ u2} (Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b' j)) i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u4, max (max u3 u2) u4} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u4, max (max u3 u2) u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b') x) j))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) x) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] (b : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Finset.sum.{u3, u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u3, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) j) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (instHMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonUnitalNonAssocSemiring.toMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1))))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u4, succ u2} (Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b' j)) i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u4, max (max u3 u2) u4} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u4, max (max u3 u2) u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b') x) j))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) x) i)
 Case conversion may be inaccurate. Consider using '#align basis.sum_repr_mul_repr Basis.sum_repr_mul_reprₓ'. -/
 theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i : ι) :
     (∑ j : ι', b.repr (b' j) i * b'.repr x j) = b.repr x i :=
@@ -1810,7 +1810,7 @@ protected noncomputable def mk : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.module.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
 Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
@@ -2031,9 +2031,9 @@ theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
 
 /- warning: basis.repr_units_smul -> Basis.repr_unitsSmul is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (v : M) (i : ι), Eq.{succ u2} R₂ (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.hasCoeToFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSmul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (SMul.smul.{u2, u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) R₂ (Units.hasSmul.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.hasCoeToFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e) v) i))
+  forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (v : M) (i : ι), Eq.{succ u2} R₂ (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSmul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (SMul.smul.{u2, u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) R₂ (Units.hasSmul.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.coeFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e) v) i))
 but is expected to have type
-  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInvUnits.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInvUnits.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
 Case conversion may be inaccurate. Consider using '#align basis.repr_units_smul Basis.repr_unitsSmulₓ'. -/
 @[simp]
 theorem repr_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
@@ -2169,9 +2169,9 @@ theorem finTwoProd_one (R : Type _) [Semiring R] : Basis.finTwoProd R 1 = (0, 1)
 
 /- warning: basis.coe_fin_two_prod_repr -> Basis.coe_finTwoProd_repr is a dubious translation:
 lean 3 declaration is
-  forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} ((Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> R) (coeFn.{succ u1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (fun (_x : Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> R) (Finsupp.hasCoeToFun.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (coeFn.{succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) => (Prod.{u1, u1} R R) -> (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) _inst_10 _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero))) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
+  forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} ((Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> R) (coeFn.{succ u1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (fun (_x : Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> R) (Finsupp.coeFun.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (coeFn.{succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) => (Prod.{u1, u1} R R) -> (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) _inst_10 _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero))) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
 but is expected to have type
-  forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} (forall (ᾰ : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) ᾰ) (FunLike.coe.{succ u1, 1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) _x) (Finsupp.funLike.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (Prod.{u1, u1} R R) (fun (_x : Prod.{u1, u1} R R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u1, u1} R R) => Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _x) (SMulHomClass.toFunLike.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (SMulZeroClass.toSMul.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toZero.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toAddZeroClass.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Prod.{u1, u1} R R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))))) (SMulZeroClass.toSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toZero.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toAddZeroClass.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)))))) (DistribMulActionHomClass.toSMulHomClass.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, u1, u1} R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)))))) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
+  forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} (forall (ᾰ : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) ᾰ) (FunLike.coe.{succ u1, 1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) _x) (Finsupp.funLike.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (Prod.{u1, u1} R R) (fun (_x : Prod.{u1, u1} R R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u1, u1} R R) => Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _x) (SMulHomClass.toFunLike.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (SMulZeroClass.toSMul.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toZero.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toAddZeroClass.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Prod.{u1, u1} R R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))))) (SMulZeroClass.toSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toZero.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toAddZeroClass.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)))))) (DistribMulActionHomClass.toSMulHomClass.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, u1, u1} R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)))))) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
 Case conversion may be inaccurate. Consider using '#align basis.coe_fin_two_prod_repr Basis.coe_finTwoProd_reprₓ'. -/
 @[simp]
 theorem coe_finTwoProd_repr {R : Type _} [Semiring R] (x : R × R) :
Diff
@@ -1474,7 +1474,7 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (x i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_symm_apply Basis.equivFun_symm_applyₓ'. -/
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
@@ -1487,7 +1487,7 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
@@ -1498,7 +1498,7 @@ theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u4, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.equivFun.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u2, u2, u2, u4, u3, max u1 u2} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.symm.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) f) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
+  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
 Case conversion may be inaccurate. Consider using '#align basis.map_equiv_fun Basis.map_equivFunₓ'. -/
 @[simp]
 theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
@@ -1509,7 +1509,7 @@ theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.tr
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
 Case conversion may be inaccurate. Consider using '#align basis.sum_equiv_fun Basis.sum_equivFunₓ'. -/
 theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
   by
@@ -1531,7 +1531,7 @@ theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u1} ι] (i : ι) (j : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_self Basis.equivFun_selfₓ'. -/
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
@@ -1569,7 +1569,7 @@ def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11811 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
 Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
@@ -1581,7 +1581,7 @@ theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι)
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u1, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u1 u2} (ι -> R) 0 (OfNat.mk.{max u1 u2} (ι -> R) 0 (Zero.zero.{max u1 u2} (ι -> R) (Pi.instZero.{u1, u2} ι (fun (a : ι) => R) (fun (i : ι) => MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
 but is expected to have type
-  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11881 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
 Case conversion may be inaccurate. Consider using '#align basis.coe_of_equiv_fun Basis.coe_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
@@ -1615,7 +1615,7 @@ variable [SMulCommClass R S M']
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_7 : Semiring.{u5} S] [_inst_8 : Module.{u5, u4} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_7)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_7) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u4, u1} M' ι _inst_4 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
 Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
@@ -1642,7 +1642,7 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 but is expected to have type
-  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10931 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
 Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
@@ -1931,7 +1931,7 @@ end Span
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15223 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15209 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15188 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15174 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
 theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
@@ -1965,7 +1965,7 @@ def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15643 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15608 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
 Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
@@ -1977,7 +1977,7 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
 lean 3 declaration is
   forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 but is expected to have type
-  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15747 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15733 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15712 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15698 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
 Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl, Mario Carneiro, Alexander Bentkamp
 
 ! This file was ported from Lean 3 source module linear_algebra.basis
-! leanprover-community/mathlib commit 2f4cdce0c2f2f3b8cd58f05d556d03b468e1eb2e
+! leanprover-community/mathlib commit ee05e9ce1322178f0c12004eb93c00d2c8c00ed2
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -20,6 +20,9 @@ import Mathbin.LinearAlgebra.Projection
 
 # Bases
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 This file defines bases in a module or vector space.
 
 It is inspired by Isabelle/HOL's linear algebra, and hence indirectly by HOL Light.
Diff
@@ -1369,7 +1369,7 @@ lean 3 declaration is
 but is expected to have type
   forall {R : Type.{u3}} {M : Type.{u2}} [_inst_6 : Ring.{u3} R] [_inst_7 : Nontrivial.{u3} R] [_inst_8 : AddCommGroup.{u2} M] [_inst_9 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)] [_inst_10 : NoZeroSMulDivisors.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9))))] (ι : Type.{u1}) [_inst_11 : Unique.{succ u1} ι], Iff (Nonempty.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9)) (Exists.{succ u2} M (fun (x : M) => Exists.{0} (Ne.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8)))))))) (fun (H : Ne.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8)))))))) => forall (y : M), Exists.{succ u3} R (fun (r : R) => Eq.{succ u2} M (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9))))) r x) y))))
 Case conversion may be inaccurate. Consider using '#align basis.basis_singleton_iff Basis.basis_singleton_iffₓ'. -/
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (x «expr ≠ » 0) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (x «expr ≠ » 0) -/
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
     Nonempty (Basis ι R M) ↔ ∃ (x : _)(_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y :=
@@ -2567,7 +2567,7 @@ lean 3 declaration is
 but is expected to have type
   forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), (LT.lt.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLT.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (Top.top.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.instTopSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) -> (Exists.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) (fun (f : LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) => And (Ne.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) f (OfNat.ofNat.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) 0 (Zero.toOfNat0.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) (LinearMap.instZeroLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))))))) (LE.le.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (LinearMap.ker.{u1, u1, u2, u1, max u2 u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) (LinearMap.instSemilinearMapClassLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))))) f))))
 Case conversion may be inaccurate. Consider using '#align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_topₓ'. -/
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
 theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
Diff
@@ -89,6 +89,7 @@ section
 
 variable (ι) (R) (M)
 
+#print Basis /-
 /-- A `basis ι R M` for a module `M` is the type of `ι`-indexed `R`-bases of `M`.
 
 The basis vectors are available as `coe_fn (b : basis ι R M) : ι → M`.
@@ -99,12 +100,15 @@ available as `basis.repr`.
 structure Basis where of_repr ::
   repr : M ≃ₗ[R] ι →₀ R
 #align basis Basis
+-/
 
 end
 
+#print uniqueBasis /-
 instance uniqueBasis [Subsingleton R] : Unique (Basis ι R M) :=
   ⟨⟨⟨default⟩⟩, fun ⟨b⟩ => by rw [Subsingleton.elim b]⟩
 #align unique_basis uniqueBasis
+-/
 
 namespace Basis
 
@@ -115,10 +119,17 @@ variable (b b₁ : Basis ι R M) (i : ι) (c : R) (x : M)
 
 section repr
 
+/- warning: basis.repr_injective -> Basis.repr_injective is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], Function.Injective.{max (succ u1) (succ u2) (succ u3), max (succ u3) (succ (max u1 u2))} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2], Function.Injective.{max (max (succ u3) (succ u2)) (succ u1), max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3)
+Case conversion may be inaccurate. Consider using '#align basis.repr_injective Basis.repr_injectiveₓ'. -/
 theorem repr_injective : Injective (repr : Basis ι R M → M ≃ₗ[R] ι →₀ R) := fun f g h => by
   cases f <;> cases g <;> congr
 #align basis.repr_injective Basis.repr_injective
 
+#print Basis.funLike /-
 /-- `b i` is the `i`th basis vector. -/
 instance funLike : FunLike (Basis ι R M) ι fun _ => M
     where
@@ -135,20 +146,45 @@ instance funLike : FunLike (Basis ι R M) ι fun _ => M
           rw [← mul_one r, ← Finsupp.smul_single', LinearEquiv.map_smul, LinearEquiv.map_smul,
             this])
 #align basis.fun_like Basis.funLike
+-/
 
+/- warning: basis.coe_of_repr -> Basis.coe_of_repr is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.of_repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (e : LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))), Eq.{max (succ u1) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (Basis.of_repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), max (succ u1) (succ u3), succ u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (_x : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, max u1 u3, u2} (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u1 u3, u2, max (max u1 u3) u2} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u1 u3, u2, max (max u1 u3) u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (LinearEquiv.{u3, u3, max u1 u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u1 u3, u2} R R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) e) (Finsupp.single.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) i (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align basis.coe_of_repr Basis.coe_of_reprₓ'. -/
 @[simp]
 theorem coe_of_repr (e : M ≃ₗ[R] ι →₀ R) : ⇑(of_repr e) = fun i => e.symm (Finsupp.single i 1) :=
   rfl
 #align basis.coe_of_repr Basis.coe_of_repr
 
+/- warning: basis.injective -> Basis.injective is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u2} R], Function.Injective.{succ u1, succ u3} ι M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u3} R], Function.Injective.{succ u2, succ u1} ι M (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b)
+Case conversion may be inaccurate. Consider using '#align basis.injective Basis.injectiveₓ'. -/
 protected theorem injective [Nontrivial R] : Injective b :=
   b.repr.symm.Injective.comp fun _ _ => (Finsupp.single_left_inj (one_ne_zero : (1 : R) ≠ 0)).mp
 #align basis.injective Basis.injective
 
+/- warning: basis.repr_symm_single_one -> Basis.repr_symm_single_one is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_1))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single_one Basis.repr_symm_single_oneₓ'. -/
 theorem repr_symm_single_one : b.repr.symm (Finsupp.single i 1) = b i :=
   rfl
 #align basis.repr_symm_single_one Basis.repr_symm_single_one
 
+/- warning: basis.repr_symm_single -> Basis.repr_symm_single is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i c)) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (c : R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finsupp.single.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) i c)) (HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) c (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))
+Case conversion may be inaccurate. Consider using '#align basis.repr_symm_single Basis.repr_symm_singleₓ'. -/
 theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
   calc
     b.repr.symm (Finsupp.single i c) = b.repr.symm (c • Finsupp.single i 1) := by
@@ -157,15 +193,33 @@ theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
     
 #align basis.repr_symm_single Basis.repr_symm_single
 
+/- warning: basis.repr_self -> Basis.repr_self is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))))
+Case conversion may be inaccurate. Consider using '#align basis.repr_self Basis.repr_selfₓ'. -/
 @[simp]
 theorem repr_self : b.repr (b i) = Finsupp.single i 1 :=
   LinearEquiv.apply_symm_apply _ _
 #align basis.repr_self Basis.repr_self
 
+/- warning: basis.repr_self_apply -> Basis.repr_self_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u1} ι i j)], Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) _inst_6 (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (j : ι) [_inst_6 : Decidable (Eq.{succ u3} ι i j)], Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) j) (ite.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Eq.{succ u3} ι i j) _inst_6 (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) j) _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align basis.repr_self_apply Basis.repr_self_applyₓ'. -/
 theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then 1 else 0 := by
   rw [repr_self, Finsupp.single_apply]
 #align basis.repr_self_apply Basis.repr_self_apply
 
+/- warning: basis.repr_symm_apply -> Basis.repr_symm_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) v) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) v) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)
+Case conversion may be inaccurate. Consider using '#align basis.repr_symm_apply Basis.repr_symm_applyₓ'. -/
 @[simp]
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
   calc
@@ -176,11 +230,23 @@ theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
     
 #align basis.repr_symm_apply Basis.repr_symm_apply
 
+/- warning: basis.coe_repr_symm -> Basis.coe_repr_symm is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) ((fun (a : Sort.{max (succ (max u1 u2)) (succ u3)}) (b : Sort.{max (succ (max u1 u2)) (succ u3)}) [self : HasLiftT.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} a b] => self.0) (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (HasLiftT.mk.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (CoeTCₓ.coe.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (coeBase.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearEquiv.LinearMap.hasCoe.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (LinearEquiv.toLinearMap.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b))
+Case conversion may be inaccurate. Consider using '#align basis.coe_repr_symm Basis.coe_repr_symmₓ'. -/
 @[simp]
 theorem coe_repr_symm : ↑b.repr.symm = Finsupp.total ι M R b :=
   LinearMap.ext fun v => b.repr_symm_apply v
 #align basis.coe_repr_symm Basis.coe_repr_symm
 
+/- warning: basis.repr_total -> Basis.repr_total is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) v)) v
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (v : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (LinearMap.{u2, u2, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u3, u1, u2} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b)) v)) v
+Case conversion may be inaccurate. Consider using '#align basis.repr_total Basis.repr_totalₓ'. -/
 @[simp]
 theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
   by
@@ -188,6 +254,12 @@ theorem repr_total (v) : b.repr (Finsupp.total _ _ _ b v) = v :=
   exact b.repr.apply_symm_apply v
 #align basis.repr_total Basis.repr_total
 
+/- warning: basis.total_repr -> Basis.total_repr is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearMap.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearMap.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u1, u3, u2} ι M R _inst_1 _inst_2 _inst_3 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (LinearMap.{u1, u1, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3) (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (fun (_x : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) => M) _x) (LinearMap.instFunLikeLinearMap.{u1, u1, max u2 u1, u3} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Finsupp.total.{u2, u3, u1} ι M R _inst_1 _inst_2 _inst_3 (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x)) x
+Case conversion may be inaccurate. Consider using '#align basis.total_repr Basis.total_reprₓ'. -/
 @[simp]
 theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
   by
@@ -195,15 +267,33 @@ theorem total_repr : Finsupp.total _ _ _ b (b.repr x) = x :=
   exact b.repr.symm_apply_apply x
 #align basis.total_repr Basis.total_repr
 
+/- warning: basis.repr_range -> Basis.repr_range is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ (max u1 u2)} (Submodule.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.range.{u2, u2, u3, max u1 u2, max u3 u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.semilinearMapClass.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.supported.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) (Set.univ.{u1} ι))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (Submodule.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.range.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b))) (Finsupp.supported.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) (Set.univ.{u3} ι))
+Case conversion may be inaccurate. Consider using '#align basis.repr_range Basis.repr_rangeₓ'. -/
 theorem repr_range : (b.repr : M →ₗ[R] ι →₀ R).range = Finsupp.supported R R univ := by
   rw [LinearEquiv.range, Finsupp.supported_univ]
 #align basis.repr_range Basis.repr_range
 
+/- warning: basis.mem_span_repr_support -> Basis.mem_span_repr_support is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
+but is expected to have type
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (m : M), Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m)))))
+Case conversion may be inaccurate. Consider using '#align basis.mem_span_repr_support Basis.mem_span_repr_supportₓ'. -/
 theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
     m ∈ span R (b '' (b.repr m).support) :=
   (Finsupp.mem_span_image_iff_total _).2 ⟨b.repr m, by simp [Finsupp.mem_supported_support]⟩
 #align basis.mem_span_repr_support Basis.mem_span_repr_support
 
+/- warning: basis.repr_support_subset_of_mem_span -> Basis.repr_support_subset_of_mem_span is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u1, u2} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u1, u2} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u1, u2} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u2} ι M (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3)) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.hasSubset.{u3} ι) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (Finset.{u3} ι) (Set.{u3} ι) (HasLiftT.mk.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (CoeTCₓ.coe.{succ u3, succ u3} (Finset.{u3} ι) (Set.{u3} ι) (Finset.Set.hasCoeT.{u3} ι))) (Finsupp.support.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (coeFn.{max (succ u2) (succ (max u3 u1)), max (succ u2) (succ (max u3 u1))} (LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (fun (_x : LinearEquiv.{u1, u1, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) => M -> (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u2, max u3 u1} R R M (Finsupp.{u3, u1} ι R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)) (Basis.repr.{u3, u1, u2} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
+but is expected to have type
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {ι : Type.{u3}} (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (s : Set.{u3} ι) {m : M}, (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u2, u1} R M _inst_1 _inst_2 _inst_3)) m (Submodule.span.{u2, u1} R M _inst_1 _inst_2 _inst_3 (Set.image.{u3, u1} ι M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) s))) -> (HasSubset.Subset.{u3} (Set.{u3} ι) (Set.instHasSubsetSet.{u3} ι) (Finset.toSet.{u3} ι (Finsupp.support.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u1, max (succ u2) (succ u3)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, u1, max u2 u3} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u2 u3} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u3, max (max u2 u1) u3} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u3, max (max u2 u1) u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u3} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) m))) s)
+Case conversion may be inaccurate. Consider using '#align basis.repr_support_subset_of_mem_span Basis.repr_support_subset_of_mem_spanₓ'. -/
 theorem repr_support_subset_of_mem_span {ι : Type _} (b : Basis ι R M) (s : Set ι) {m : M}
     (hm : m ∈ span R (b '' s)) : ↑(b.repr m).support ⊆ s :=
   by
@@ -215,6 +305,7 @@ end repr
 
 section Coord
 
+#print Basis.coord /-
 /-- `b.coord i` is the linear function giving the `i`'th coordinate of a vector
 with respect to the basis `b`.
 
@@ -225,22 +316,43 @@ finite-dimensional spaces it is the `ι`th basis vector of the dual space.
 def coord : M →ₗ[R] R :=
   Finsupp.lapply i ∘ₗ ↑b.repr
 #align basis.coord Basis.coord
+-/
 
+/- warning: basis.forall_coord_eq_zero_iff -> Basis.forall_coord_eq_zero_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) (Eq.{succ u3} M x (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) {x : M}, Iff (forall (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) x) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) x) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) x) 0 (Zero.toOfNat0.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) x) (MonoidWithZero.toZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) x) (Semiring.toMonoidWithZero.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) x) _inst_1))))) (Eq.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)))))
+Case conversion may be inaccurate. Consider using '#align basis.forall_coord_eq_zero_iff Basis.forall_coord_eq_zero_iffₓ'. -/
 theorem forall_coord_eq_zero_iff {x : M} : (∀ i, b.Coord i x = 0) ↔ x = 0 :=
   Iff.trans (by simp only [b.coord_apply, Finsupp.ext_iff, Finsupp.zero_apply])
     b.repr.map_eq_zero_iff
 #align basis.forall_coord_eq_zero_iff Basis.forall_coord_eq_zero_iff
 
+#print Basis.sumCoords /-
 /-- The sum of the coordinates of an element `m : M` with respect to a basis. -/
 noncomputable def sumCoords : M →ₗ[R] R :=
   (Finsupp.lsum ℕ fun i => LinearMap.id) ∘ₗ (b.repr : M →ₗ[R] ι →₀ R)
 #align basis.sum_coords Basis.sumCoords
+-/
 
+/- warning: basis.coe_sum_coords -> Basis.coe_sumCoords is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u2, u2} ι R R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u2} R))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => Finsupp.sum.{u1, u3, u3} ι R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) m) (fun (i : ι) => id.{succ u3} R))
+Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords Basis.coe_sumCoordsₓ'. -/
 @[simp]
 theorem coe_sumCoords : (b.sumCoords : M → R) = fun m => (b.repr m).Sum fun i => id :=
   rfl
 #align basis.coe_sum_coords Basis.coe_sumCoords
 
+/- warning: basis.coe_sum_coords_eq_finsum -> Basis.coe_sumCoords_eq_finsum is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u2, succ u1} R ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) m))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u3) (succ u2)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) a) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (fun (m : M) => finsum.{u3, succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) m) ι (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) m) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) m) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) m) _inst_1))) (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) m))
+Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords_eq_finsum Basis.coe_sumCoords_eq_finsumₓ'. -/
 theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b.Coord i m :=
   by
   ext m
@@ -250,6 +362,12 @@ theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b
     Finsupp.fun_support_eq]
 #align basis.coe_sum_coords_eq_finsum Basis.coe_sumCoords_eq_finsum
 
+/- warning: basis.coe_sum_coords_of_fintype -> Basis.coe_sumCoords_of_fintype is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι], Eq.{max (succ u3) (succ u2)} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (Finset.sum.{max u3 u2, u1} ((fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) ι (Pi.addCommMonoid.{u3, u2} M (fun (ᾰ : M) => R) (fun (i : M) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i)))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u3} ι], Eq.{max (succ u2) (succ u1)} (forall (a : M), (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) a) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.sum.{max u2 u1, u3} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) ι (LinearMap.addCommMonoid.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i)))
+Case conversion may be inaccurate. Consider using '#align basis.coe_sum_coords_of_fintype Basis.coe_sumCoords_of_fintypeₓ'. -/
 @[simp]
 theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i, b.Coord i :=
   by
@@ -258,16 +376,34 @@ theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i,
     id.def, Fintype.sum_apply, imp_true_iff, eq_self_iff_true, Finsupp.coe_lsum, LinearMap.coe_comp]
 #align basis.coe_sum_coords_of_fintype Basis.coe_sumCoords_of_fintype
 
+/- warning: basis.sum_coords_self_apply -> Basis.sumCoords_self_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.sumCoords.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.sumCoords.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Semiring.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) _inst_1)))
+Case conversion may be inaccurate. Consider using '#align basis.sum_coords_self_apply Basis.sumCoords_self_applyₓ'. -/
 @[simp]
 theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
   simp only [Basis.sumCoords, LinearMap.id_coe, LinearEquiv.coe_coe, id.def, Basis.repr_self,
     Function.comp_apply, Finsupp.coe_lsum, LinearMap.coe_comp, Finsupp.sum_single_index]
 #align basis.sum_coords_self_apply Basis.sumCoords_self_apply
 
+/- warning: basis.dvd_coord_smul -> Basis.dvd_coord_smul is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.Dvd.{u2} R (semigroupDvd.{u2} R (SemigroupWithZero.toSemigroup.{u2} R (NonUnitalSemiring.toSemigroupWithZero.{u2} R (Semiring.toNonUnitalSemiring.{u2} R _inst_1)))) r (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) r m))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (m : M) (r : R), Dvd.dvd.{u3} R (semigroupDvd.{u3} R (SemigroupWithZero.toSemigroup.{u3} R (NonUnitalSemiring.toSemigroupWithZero.{u3} R (Semiring.toNonUnitalSemiring.{u3} R _inst_1)))) r (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b i) (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) r m))
+Case conversion may be inaccurate. Consider using '#align basis.dvd_coord_smul Basis.dvd_coord_smulₓ'. -/
 theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.Coord i (r • m) :=
   ⟨b.Coord i m, by simp⟩
 #align basis.dvd_coord_smul Basis.dvd_coord_smul
 
+/- warning: basis.coord_repr_symm -> Basis.coord_repr_symm is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) f i)
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (a : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) a) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (fun (_x : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) M _inst_1 _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) f i)
+Case conversion may be inaccurate. Consider using '#align basis.coord_repr_symm Basis.coord_repr_symmₓ'. -/
 theorem coord_repr_symm (b : Basis ι R M) (i : ι) (f : ι →₀ R) : b.Coord i (b.repr.symm f) = f i :=
   by simp only [repr_symm_apply, coord_apply, repr_total]
 #align basis.coord_repr_symm Basis.coord_repr_symm
@@ -282,6 +418,12 @@ variable [RingHomInvPair σ σ'] [RingHomInvPair σ' σ]
 
 variable {M₁ : Type _} [AddCommMonoid M₁] [Module R₁ M₁]
 
+/- warning: basis.ext -> Basis.ext is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u2, u4} R R₁ (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u5}} [_inst_9 : AddCommMonoid.{u5} M₁] [_inst_10 : Module.{u4, u5} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u5} M₁ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearMap.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u5)} (LinearMap.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M₁) _x) (LinearMap.instFunLikeLinearMap.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearMap.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+Case conversion may be inaccurate. Consider using '#align basis.ext Basis.extₓ'. -/
 /-- Two linear maps are equal if they are equal on basis vectors. -/
 theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
   by
@@ -292,6 +434,12 @@ theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
 
 include σ'
 
+/- warning: basis.ext' -> Basis.ext' is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u2, u4} R R₁ (Semiring.toNonAssocSemiring.{u2} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {σ' : RingHom.{u4, u2} R₁ R (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6) (Semiring.toNonAssocSemiring.{u2} R _inst_1)} [_inst_7 : RingHomInvPair.{u2, u4} R R₁ _inst_1 _inst_6 σ σ'] [_inst_8 : RingHomInvPair.{u4, u2} R₁ R _inst_6 _inst_1 σ' σ] {M₁ : Type.{u5}} [_inst_9 : AddCommMonoid.{u5} M₁] [_inst_10 : Module.{u4, u5} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u5} M₁ (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearEquiv.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8) f₁ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u3) (succ u5), max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) (fun (_x : LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) => M -> M₁) (LinearEquiv.hasCoeToFun.{u2, u4, u3, u5} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8) f₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u5)} (LinearEquiv.{u2, u4, u3, u5} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u5}} {M : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) {R₁ : Type.{u4}} [_inst_6 : Semiring.{u4} R₁] {σ : RingHom.{u5, u4} R R₁ (Semiring.toNonAssocSemiring.{u5} R _inst_1) (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6)} {σ' : RingHom.{u4, u5} R₁ R (Semiring.toNonAssocSemiring.{u4} R₁ _inst_6) (Semiring.toNonAssocSemiring.{u5} R _inst_1)} [_inst_7 : RingHomInvPair.{u5, u4} R R₁ _inst_1 _inst_6 σ σ'] [_inst_8 : RingHomInvPair.{u4, u5} R₁ R _inst_6 _inst_1 σ' σ] {M₁ : Type.{u2}} [_inst_9 : AddCommMonoid.{u2} M₁] [_inst_10 : Module.{u4, u2} R₁ M₁ _inst_6 _inst_9] {f₁ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10} {f₂ : LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : M) => M₁) (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₁ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : M) => M₁) _x) (AddHomClass.toFunLike.{max u3 u2, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) M M₁ (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (AddZeroClass.toAdd.{u2} M₁ (AddMonoid.toAddZeroClass.{u2} M₁ (AddCommMonoid.toAddMonoid.{u2} M₁ _inst_9))) (SemilinearMapClass.toAddHomClass.{max u3 u2, u5, u4, u3, u2} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) R R₁ _inst_1 _inst_6 σ M M₁ _inst_2 _inst_9 _inst_3 _inst_10 (SemilinearEquivClass.instSemilinearMapClass.{u5, u4, u3, u2, max u3 u2} R R₁ M M₁ (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8 (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u5, u4, u3, u2} R R₁ M M₁ _inst_1 _inst_6 _inst_2 _inst_9 _inst_3 _inst_10 σ σ' _inst_7 _inst_8)))) f₂ (FunLike.coe.{max (max (succ u1) (succ u5)) (succ u3), succ u1, succ u3} (Basis.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u5, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u3) (succ u2)} (LinearEquiv.{u5, u4, u3, u2} R R₁ _inst_1 _inst_6 σ σ' _inst_7 _inst_8 M M₁ _inst_2 _inst_9 _inst_3 _inst_10) f₁ f₂)
+Case conversion may be inaccurate. Consider using '#align basis.ext' Basis.ext'ₓ'. -/
 /-- Two linear equivs are equal if they are equal on basis vectors. -/
 theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ :=
   by
@@ -302,28 +450,64 @@ theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
 
 omit σ'
 
+/- warning: basis.ext_elem_iff -> Basis.ext_elem_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, Iff (Eq.{succ u3} M x y) (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i))
+Case conversion may be inaccurate. Consider using '#align basis.ext_elem_iff Basis.ext_elem_iffₓ'. -/
 /-- Two elements are equal iff their coordinates are equal. -/
 theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
   simp only [← Finsupp.ext_iff, EmbeddingLike.apply_eq_iff_eq]
 #align basis.ext_elem_iff Basis.ext_elem_iff
 
+/- warning: basis.ext_elem -> Basis.ext_elem is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {x : M} {y : M}, (forall (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u3, max (succ u1) (succ u2)} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u2, u3, max u1 u2} (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u2} (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u1 u2} R (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u1 u2, max (max u1 u2) u3} R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u1 u2, max (max u1 u2) u3} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) y) i)) -> (Eq.{succ u3} M x y)
+Case conversion may be inaccurate. Consider using '#align basis.ext_elem Basis.ext_elemₓ'. -/
 alias ext_elem_iff ↔ _ _root_.basis.ext_elem
 #align basis.ext_elem Basis.ext_elem
 
+/- warning: basis.repr_eq_iff -> Basis.repr_eq_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.toLinearMap.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b)) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff Basis.repr_eq_iffₓ'. -/
 theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
     ↑b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
   ⟨fun h i => h ▸ b.repr_self i, fun h => b.ext fun i => (b.repr_self i).trans (h i).symm⟩
 #align basis.repr_eq_iff Basis.repr_eq_iff
 
+/- warning: basis.repr_eq_iff' -> Basis.repr_eq_iff' is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {f : LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))}, Iff (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) f) (forall (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align basis.repr_eq_iff' Basis.repr_eq_iff'ₓ'. -/
 theorem repr_eq_iff' {b : Basis ι R M} {f : M ≃ₗ[R] ι →₀ R} :
     b.repr = f ↔ ∀ i, f (b i) = Finsupp.single i 1 :=
   ⟨fun h i => h ▸ b.repr_self i, fun h => b.ext' fun i => (b.repr_self i).trans (h i).symm⟩
 #align basis.repr_eq_iff' Basis.repr_eq_iff'
 
+/- warning: basis.apply_eq_iff -> Basis.apply_eq_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) x) (Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {x : M} {i : ι}, Iff (Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) x) (Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align basis.apply_eq_iff Basis.apply_eq_iffₓ'. -/
 theorem apply_eq_iff {b : Basis ι R M} {x : M} {i : ι} : b i = x ↔ b.repr x = Finsupp.single i 1 :=
   ⟨fun h => h ▸ b.repr_self i, fun h => b.repr.Injective ((b.repr_self i).trans h.symm)⟩
 #align basis.apply_eq_iff Basis.apply_eq_iff
 
+/- warning: basis.repr_apply_eq -> Basis.repr_apply_eq is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))) x y)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u1 u2} (ι -> R) (Pi.instAdd.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (SMul.smul.{u2, max u1 u2} R (ι -> R) (Function.hasSMul.{u1, u2, u2} ι R R (Mul.toSMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u1) (succ u2)} (ι -> R) (f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Finsupp.single.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))) -> (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : M -> ι -> R), (forall (x : M) (y : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))) x y)) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (ι -> R) (ι -> R) (ι -> R) (instHAdd.{max u3 u2} (ι -> R) (Pi.instAdd.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (f x) (f y))) -> (forall (c : R) (x : M), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u2, u1} R M _inst_1 _inst_2 _inst_3))))) c x)) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (ι -> R) (ι -> R) (instHSMul.{u2, max u3 u2} R (ι -> R) (Pi.instSMul.{u3, u2, u2} ι R (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.3609 : ι) => R) (fun (i : ι) => SMulZeroClass.toSMul.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u2, u2} R R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (MulZeroClass.toSMulWithZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) c (f x))) -> (forall (i : ι), Eq.{max (succ u3) (succ u2)} (ι -> R) (f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.single.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))) -> (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) x) i) (f x i))
+Case conversion may be inaccurate. Consider using '#align basis.repr_apply_eq Basis.repr_apply_eqₓ'. -/
 /-- An unbundled version of `repr_eq_iff` -/
 theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f y)
     (hsmul : ∀ (c : R) (x : M), f (c • x) = c • f x) (f_eq : ∀ i, f (b i) = Finsupp.single i 1)
@@ -346,6 +530,12 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
     
 #align basis.repr_apply_eq Basis.repr_apply_eq
 
+/- warning: basis.eq_of_repr_eq_repr -> Basis.eq_of_repr_eq_repr is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b₁ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (x : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₁) x) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b₂) x) i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
+Case conversion may be inaccurate. Consider using '#align basis.eq_of_repr_eq_repr Basis.eq_of_repr_eq_reprₓ'. -/
 /-- Two bases are equal if they assign the same coordinates. -/
 theorem eq_of_repr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
   repr_injective <| by
@@ -353,6 +543,12 @@ theorem eq_of_repr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x
     apply h
 #align basis.eq_of_repr_eq_repr Basis.eq_of_repr_eq_repr
 
+/- warning: basis.eq_of_apply_eq -> Basis.eq_of_apply_eq is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {b₁ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3}, (forall (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b₁ i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b₂ i)) -> (Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] {b₁ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3} {b₂ : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3}, (forall (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₂ i)) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b₁ b₂)
+Case conversion may be inaccurate. Consider using '#align basis.eq_of_apply_eq Basis.eq_of_apply_eqₓ'. -/
 /-- Two bases are equal if their basis vectors are the same. -/
 @[ext]
 theorem eq_of_apply_eq {b₁ b₂ : Basis ι R M} : (∀ i, b₁ i = b₂ i) → b₁ = b₂ :=
@@ -365,12 +561,20 @@ section Map
 
 variable (f : M ≃ₗ[R] M')
 
+#print Basis.map /-
 /-- Apply the linear equivalence `f` to the basis vectors. -/
 @[simps]
 protected def map : Basis ι R M' :=
   of_repr (f.symm.trans b.repr)
 #align basis.map Basis.map
+-/
 
+/- warning: basis.map_apply -> Basis.map_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (i : ι), Eq.{succ u4} M' (coeFn.{max (succ u1) (succ u2) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) => ι -> M') (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) ι (fun (_x : ι) => M') (Basis.funLike.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5)) (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f) i) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M') i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M') _x) (Basis.funLike.{u3, u2, u4} ι R M' _inst_1 _inst_4 _inst_5) (Basis.map.{u3, u2, u1, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f) i) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u2, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u2, u4} R M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u4, u2, u1, u4} (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u4, max u1 u4} R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u4, max u1 u4} R R M M' (LinearEquiv.{u2, u2, u1, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))
+Case conversion may be inaccurate. Consider using '#align basis.map_apply Basis.map_applyₓ'. -/
 @[simp]
 theorem map_apply (i) : b.map f i = f (b i) :=
   rfl
@@ -387,6 +591,12 @@ include f h b
 
 attribute [local instance] SMul.comp.isScalarTower
 
+/- warning: basis.map_coeffs -> Basis.mapCoeffs is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))), (forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u4, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M M (instHSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (SMulZeroClass.toSMul.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (MonoidWithZero.toZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (Semiring.toMonoidWithZero.{u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u4, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u2) (succ u4), succ u2, succ u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') _x) (MulHomClass.toFunLike.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u2 u4, u2, u4} (RingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u2, u4} R R' (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))) (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3))))) c x)) -> (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7))
+Case conversion may be inaccurate. Consider using '#align basis.map_coeffs Basis.mapCoeffsₓ'. -/
 /-- If `R` and `R'` are isomorphic rings that act identically on a module `M`,
 then a basis for `M` as `R`-module is also a basis for `M` as `R'`-module.
 
@@ -404,10 +614,22 @@ def mapCoeffs : Basis ι R' M :=
         Finsupp.mapRange.linearEquiv (Module.compHom.toLinearEquiv f.symm).symm
 #align basis.map_coeffs Basis.mapCoeffs
 
+/- warning: basis.map_coeffs_apply -> Basis.mapCoeffs_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u4} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u4} M (HSMul.hSMul.{u2, u4, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M M (instHSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u2, u4} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u4, u4} R M M (instHSMul.{u1, u4} R M (SMulZeroClass.toSMul.{u1, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u4} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u4} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (Module.toMulActionWithZero.{u1, u4} R M _inst_1 _inst_2 _inst_3))))) c x)) (i : ι), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u3, succ u4} (Basis.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u4} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u3, u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h) i) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u4), succ u3, succ u4} (Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) b i)
+Case conversion may be inaccurate. Consider using '#align basis.map_coeffs_apply Basis.mapCoeffs_applyₓ'. -/
 theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
   apply_eq_iff.mpr <| by simp [f.to_add_equiv_eq_coe]
 #align basis.map_coeffs_apply Basis.mapCoeffs_apply
 
+/- warning: basis.coe_map_coeffs -> Basis.coe_mapCoeffs is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u4}} [_inst_6 : Semiring.{u4} R'] [_inst_7 : Module.{u4, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (SMul.smul.{u4, u3} R' M (SMulZeroClass.toHasSmul.{u4, u3} R' M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_6)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M (Semiring.toMonoidWithZero.{u4} R' _inst_6) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u4, u3} R' M _inst_6 _inst_2 _inst_7)))) (coeFn.{max (succ u2) (succ u4), max (succ u2) (succ u4)} (RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) (fun (_x : RingEquiv.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) => R -> R') (RingEquiv.hasCoeToFun.{u2, u4} R R' (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Distrib.toHasMul.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6)))) (Distrib.toHasAdd.{u4} R' (NonUnitalNonAssocSemiring.toDistrib.{u4} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_6))))) f c) x) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x)), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u4) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) (fun (_x : Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u4) (succ u3), succ u1, succ u3} (Basis.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u4, u3} ι R' M _inst_6 _inst_2 _inst_7)) (Basis.mapCoeffs.{u1, u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)
+but is expected to have type
+  forall {ι : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) {R' : Type.{u2}} [_inst_6 : Semiring.{u2} R'] [_inst_7 : Module.{u2, u3} R' M _inst_6 _inst_2] (f : RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) (h : forall (c : R) (x : M), Eq.{succ u3} M (HSMul.hSMul.{u2, u3, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M M (instHSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (SMulZeroClass.toSMul.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) _inst_6) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u2, u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') c) M _inst_6 _inst_2 _inst_7))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : R) => R') _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquivClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))))) R R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)) (RingEquiv.instRingEquivClassRingEquiv.{u1, u2} R R' (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (NonUnitalNonAssocSemiring.toMul.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6))) (Distrib.toAdd.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toAdd.{u2} R' (NonUnitalNonAssocSemiring.toDistrib.{u2} R' (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R' (Semiring.toNonAssocSemiring.{u2} R' _inst_6)))))))) f c) x) (HSMul.hSMul.{u1, u3, u3} R M M (instHSMul.{u1, u3} R M (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R M (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (Module.toMulActionWithZero.{u1, u3} R M _inst_1 _inst_2 _inst_3))))) c x)), Eq.{max (succ u4) (succ u3)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u3} (Basis.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u2, u3} ι R' M _inst_6 _inst_2 _inst_7) (Basis.mapCoeffs.{u4, u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b R' _inst_6 _inst_7 f h)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u3), succ u4, succ u3} (Basis.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)
+Case conversion may be inaccurate. Consider using '#align basis.coe_map_coeffs Basis.coe_mapCoeffsₓ'. -/
 @[simp]
 theorem coe_mapCoeffs : (b.mapCoeffs f h : ι → M) = b :=
   funext <| b.mapCoeffs_apply f h
@@ -421,11 +643,19 @@ variable (b' : Basis ι' R M')
 
 variable (e : ι ≃ ι')
 
+#print Basis.reindex /-
 /-- `b.reindex (e : ι ≃ ι')` is a basis indexed by `ι'` -/
 def reindex : Basis ι' R M :=
   Basis.of_repr (b.repr.trans (Finsupp.domLCongr e))
 #align basis.reindex Basis.reindex
+-/
 
+/- warning: basis.reindex_apply -> Basis.reindex_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u4} M (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
+but is expected to have type
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) i') (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e) i') (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
+Case conversion may be inaccurate. Consider using '#align basis.reindex_apply Basis.reindex_applyₓ'. -/
 theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
   show
     (b.repr.trans (Finsupp.domLCongr e)).symm (Finsupp.single i' 1) =
@@ -433,30 +663,66 @@ theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
     by rw [LinearEquiv.symm_trans_apply, Finsupp.domLCongr_symm, Finsupp.domLCongr_single]
 #align basis.reindex_apply Basis.reindex_apply
 
+/- warning: basis.coe_reindex -> Basis.coe_reindex is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u4)} ((fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u2, succ u1, succ u4} ι' ι M (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e)))
+but is expected to have type
+  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} (forall (a : ι'), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) a) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u4, u2, u3} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u4, u2, u3} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Function.comp.{succ u4, succ u1, succ u3} ι' ι M (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u4} ι ι' e)))
+Case conversion may be inaccurate. Consider using '#align basis.coe_reindex Basis.coe_reindexₓ'. -/
 @[simp]
 theorem coe_reindex : (b.reindex e : ι' → M) = b ∘ e.symm :=
   funext (b.reindex_apply e)
 #align basis.coe_reindex Basis.coe_reindex
 
+/- warning: basis.repr_reindex_apply -> Basis.repr_reindex_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι') (i' : ι'), Eq.{succ u3} R (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.hasCoeToFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (coeFn.{max 1 (max (succ u2) (succ u1)) (succ u1) (succ u2), max (succ u2) (succ u1)} (Equiv.{succ u2, succ u1} ι' ι) (fun (_x : Equiv.{succ u2, succ u1} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u2, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u2} ι ι' e) i'))
+but is expected to have type
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u4}} {M : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u4, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u3} ι ι') (i' : ι'), Eq.{succ u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) i') (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u4) u2, u4, u2, max u3 u4} (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u3 u4} R (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u3 u4, max (max u3 u4) u2} R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u3 u4, max (max u3 u4) u2} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u3} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u3 u4} R R M (Finsupp.{u3, u4} ι' R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u4} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u4, u4} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u3, u4, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u3, u4, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) i') (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u4)) (succ u2), succ u2, max (succ u1) (succ u4)} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (SMulZeroClass.toSMul.{u4, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u4, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u4, u2} R M (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toZero.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u4) u2, u4, u2, max u1 u4} (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u4} (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))))) (Module.toDistribMulAction.{u4, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u4, max u1 u4} R (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u4, u2, max u1 u4, max (max u1 u4) u2} R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, u2, max u1 u4, max (max u1 u4) u2} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) (LinearEquiv.{u4, u4, u2, max u4 u1} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, u2, max u1 u4} R R M (Finsupp.{u1, u4} ι R (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u4} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u4, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1)))))) (Basis.repr.{u1, u4, u2} ι R M _inst_1 _inst_2 _inst_3 b) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u1} (Equiv.{succ u3, succ u1} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u3, succ u1} ι' ι) (Equiv.symm.{succ u1, succ u3} ι ι' e) i'))
+Case conversion may be inaccurate. Consider using '#align basis.repr_reindex_apply Basis.repr_reindex_applyₓ'. -/
 theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.symm i') :=
   show (Finsupp.domLCongr e : _ ≃ₗ[R] _) (b.repr x) i' = _ by simp
 #align basis.repr_reindex_apply Basis.repr_reindex_apply
 
+/- warning: basis.repr_reindex -> Basis.repr_reindex is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u2 u3)), max (succ u4) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u2, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x))
+but is expected to have type
+  forall {ι : Type.{u1}} {ι' : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (x : M) (e : Equiv.{succ u1, succ u4} ι ι'), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) x) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u2, max (succ u4) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u3) u2, u3, u2, max u4 u3} (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u4 u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u4 u3} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u4 u3, max (max u4 u3) u2} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u4 u3, max (max u4 u3) u2} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u4 u3} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u4, u3, u2} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u4, u3, u2} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) x) (Finsupp.mapDomain.{u1, u4, u3} ι ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} ι ι') e) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b) x))
+Case conversion may be inaccurate. Consider using '#align basis.repr_reindex Basis.repr_reindexₓ'. -/
 @[simp]
 theorem repr_reindex : (b.reindex e).repr x = (b.repr x).mapDomain e :=
   FunLike.ext _ _ <| by simp [repr_reindex_apply]
 #align basis.repr_reindex Basis.repr_reindex
 
+/- warning: basis.reindex_refl -> Basis.reindex_refl is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u1, u2, u3} ι ι R M _inst_1 _inst_2 _inst_3 b (Equiv.refl.{succ u1} ι)) b
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u3, u3, u2, u1} ι ι R M _inst_1 _inst_2 _inst_3 b (Equiv.refl.{succ u3} ι)) b
+Case conversion may be inaccurate. Consider using '#align basis.reindex_refl Basis.reindex_reflₓ'. -/
 @[simp]
 theorem reindex_refl : b.reindex (Equiv.refl ι) = b :=
   eq_of_apply_eq fun i => by simp
 #align basis.reindex_refl Basis.reindex_refl
 
+/- warning: basis.range_reindex -> Basis.range_reindex is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{succ u4} (Set.{u4} M) (Set.range.{u4, succ u2} M ι' (coeFn.{max (succ u2) (succ u3) (succ u4), max (succ u2) (succ u4)} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u4), succ u2, succ u4} (Basis.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3)) (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e))) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b))
+but is expected to have type
+  forall {ι : Type.{u1}} {ι' : Type.{u3}} {R : Type.{u2}} {M : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u2, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u3} ι ι'), Eq.{succ u4} (Set.{u4} M) (Set.range.{u4, succ u3} M ι' (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, succ u4} (Basis.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u3, u2, u4} ι' R M _inst_1 _inst_2 _inst_3) (Basis.reindex.{u1, u3, u2, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e))) (Set.range.{u4, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, succ u4} (Basis.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u4} ι R M _inst_1 _inst_2 _inst_3) b))
+Case conversion may be inaccurate. Consider using '#align basis.range_reindex Basis.range_reindexₓ'. -/
 /-- `simp` can prove this as `basis.coe_reindex` + `equiv_like.range_comp` -/
 theorem range_reindex : Set.range (b.reindex e) = Set.range b := by
   rw [coe_reindex, EquivLike.range_comp]
 #align basis.range_reindex Basis.range_reindex
 
+/- warning: basis.sum_coords_reindex -> Basis.sumCoords_reindex is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u4) (succ u3)} (LinearMap.{u3, u3, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) (Basis.sumCoords.{u2, u3, u4} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u3, u4} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Basis.sumCoords.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b)
+but is expected to have type
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u4}} {M : Type.{u3}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u4) (succ u3)} (LinearMap.{u4, u4, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) _inst_3 (Semiring.toModule.{u4} R _inst_1)) (Basis.sumCoords.{u2, u4, u3} ι' R M _inst_1 _inst_2 _inst_3 (Basis.reindex.{u1, u2, u4, u3} ι ι' R M _inst_1 _inst_2 _inst_3 b e)) (Basis.sumCoords.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 b)
+Case conversion may be inaccurate. Consider using '#align basis.sum_coords_reindex Basis.sumCoords_reindexₓ'. -/
 @[simp]
 theorem sumCoords_reindex : (b.reindex e).sumCoords = b.sumCoords :=
   by
@@ -465,6 +731,7 @@ theorem sumCoords_reindex : (b.reindex e).sumCoords = b.sumCoords :=
   exact Finsupp.sum_mapDomain_index (fun _ => rfl) fun _ _ _ => rfl
 #align basis.sum_coords_reindex Basis.sumCoords_reindex
 
+#print Basis.reindexRange /-
 /-- `b.reindex_range` is a basis indexed by `range b`, the basis vectors themselves. -/
 def reindexRange : Basis (range b) R M :=
   haveI := Classical.dec (Nontrivial R)
@@ -475,7 +742,14 @@ def reindexRange : Basis (range b) R M :=
     letI : Subsingleton R := not_nontrivial_iff_subsingleton.mp h
     Basis.of_repr (Module.subsingletonEquiv R M (range b))
 #align basis.reindex_range Basis.reindexRange
+-/
 
+/- warning: basis.reindex_range_self -> Basis.reindexRange_self is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.range.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) (Set.mem_range_self.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) i)), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) _x) (Basis.funLike.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+Case conversion may be inaccurate. Consider using '#align basis.reindex_range_self Basis.reindexRange_selfₓ'. -/
 theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange ⟨b i, h⟩ = b i :=
   by
   by_cases htr : Nontrivial R
@@ -487,6 +761,12 @@ theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange
     simp [reindex_range]
 #align basis.reindex_range_self Basis.reindexRange_self
 
+/- warning: basis.reindex_range_repr_self -> Basis.reindexRange_repr_self is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.mem_range_self.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Set.Elem.{u2} M (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (Set.range.{u2, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.mem_range_self.{succ u1, u2} M ι (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
+Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr_self Basis.reindexRange_repr_selfₓ'. -/
 theorem reindexRange_repr_self (i : ι) :
     b.reindexRange.repr (b i) = Finsupp.single ⟨b i, mem_range_self i⟩ 1 :=
   calc
@@ -496,6 +776,12 @@ theorem reindexRange_repr_self (i : ι) :
     
 #align basis.reindex_range_repr_self Basis.reindexRange_repr_self
 
+/- warning: basis.reindex_range_apply -> Basis.reindexRange_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))))))) x)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => M) _x) (Basis.funLike.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) x)
+Case conversion may be inaccurate. Consider using '#align basis.reindex_range_apply Basis.reindexRange_applyₓ'. -/
 @[simp]
 theorem reindexRange_apply (x : range b) : b.reindexRange x = x :=
   by
@@ -503,6 +789,12 @@ theorem reindexRange_apply (x : range b) : b.reindexRange x = x :=
   exact b.reindex_range_self i
 #align basis.reindex_range_apply Basis.reindexRange_apply
 
+/- warning: basis.reindex_range_repr' -> Basis.reindexRange_repr' is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) bi), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.hasCoeToFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) bi (Exists.intro.{succ u1} ι (fun (y : ι) => Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b y) bi) i h))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) {bi : M} {i : ι} (h : Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) bi), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) bi (Exists.intro.{succ u2} ι (fun (y : ι) => Eq.{succ u3} M (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b y) bi) i h))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr' Basis.reindexRange_repr'ₓ'. -/
 theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
     b.reindexRange.repr x ⟨bi, ⟨i, h⟩⟩ = b.repr x i :=
   by
@@ -522,6 +814,12 @@ theorem reindexRange_repr' (x : M) {bi : M} {i : ι} (h : b i = bi) :
     exact fun i j h => b.injective (Subtype.mk.inj h)
 #align basis.reindex_range_repr' Basis.reindexRange_repr'
 
+/- warning: basis.reindex_range_repr -> Basis.reindexRange_repr is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Set.range.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) (Set.mem_range_self.{u3, succ u1} M ι (fun (i : ι) => coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) i)), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) -> R) (Finsupp.hasCoeToFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Set.{u3} M) Type.{u3} (Set.hasCoeToSort.{u3} M) (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Set.{u3} M) (Set.hasMem.{u3} M) x (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Set.mem_range_self.{succ u2, u3} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i)), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (fun (_x : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) => R) _x) (Finsupp.funLike.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Set.Elem.{u3} M (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b)) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (Set.range.{u3, succ u2} M ι (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+Case conversion may be inaccurate. Consider using '#align basis.reindex_range_repr Basis.reindexRange_reprₓ'. -/
 @[simp]
 theorem reindexRange_repr (x : M) (i : ι) (h := Set.mem_range_self i) :
     b.reindexRange.repr x ⟨b i, h⟩ = b.repr x i :=
@@ -532,12 +830,20 @@ section Fintype
 
 variable [Fintype ι] [DecidableEq M]
 
+#print Basis.reindexFinsetRange /-
 /-- `b.reindex_finset_range` is a basis indexed by `finset.univ.image b`,
 the finite set of basis vectors themselves. -/
 def reindexFinsetRange : Basis (Finset.univ.image b) R M :=
   b.reindexRange.reindex ((Equiv.refl M).subtypeEquiv (by simp))
 #align basis.reindex_finset_range Basis.reindexFinsetRange
+-/
 
+/- warning: basis.reindex_finset_range_self -> Basis.reindexFinsetRange_self is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) _x) (Basis.funLike.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)
+Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_self Basis.reindexFinsetRange_selfₓ'. -/
 theorem reindexFinsetRange_self (i : ι) (h := Finset.mem_image_of_mem b (Finset.mem_univ i)) :
     b.reindexFinsetRange ⟨b i, h⟩ = b i :=
   by
@@ -545,6 +851,12 @@ theorem reindexFinsetRange_self (i : ι) (h := Finset.mem_image_of_mem b (Finset
   rfl
 #align basis.reindex_finset_range_self Basis.reindexFinsetRange_self
 
+/- warning: basis.reindex_finset_range_apply -> Basis.reindexFinsetRange_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))), Eq.{succ u3} M (coeFn.{max (succ u2) (succ u3), succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> M) (FunLike.hasCoeToFun.{max (succ u2) (succ u3), succ u3, succ u3} (Basis.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3) (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (fun (_x : coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) => M) (Basis.funLike.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3)) (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) x) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))))))) x)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) x) (FunLike.coe.{max (succ u1) (succ u3), succ u3, succ u3} (Basis.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => M) _x) (Basis.funLike.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3) (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b)) x) (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) x)
+Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_apply Basis.reindexFinsetRange_applyₓ'. -/
 @[simp]
 theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRange x = x :=
   by
@@ -553,6 +865,12 @@ theorem reindexFinsetRange_apply (x : Finset.univ.image b) : b.reindexFinsetRang
   exact b.reindex_finset_range_self i
 #align basis.reindex_finset_range_apply Basis.reindexFinsetRange_apply
 
+/- warning: basis.reindex_finset_range_repr_self -> Basis.reindexFinsetRange_repr_self is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (i : ι), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (Finsupp.single.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u2} M] (i : ι), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u2, u3, u2, max u3 u2} (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u2} R (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u2, max u3 u2} R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u2} R R M (Finsupp.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (Finsupp.single.{u2, u3} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6)))) R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Finset.image.{u1, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u1} ι _inst_6))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.mem_image_of_mem.{u2, u1} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u1} ι _inst_6 i))) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R _inst_1))))
+Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr_self Basis.reindexFinsetRange_repr_selfₓ'. -/
 theorem reindexFinsetRange_repr_self (i : ι) :
     b.reindexFinsetRange.repr (b i) =
       Finsupp.single ⟨b i, Finset.mem_image_of_mem b (Finset.mem_univ i)⟩ 1 :=
@@ -563,6 +881,12 @@ theorem reindexFinsetRange_repr_self (i : ι) :
   rfl
 #align basis.reindex_finset_range_repr_self Basis.reindexFinsetRange_repr_self
 
+/- warning: basis.reindex_finset_range_repr -> Basis.reindexFinsetRange_repr is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (Finset.mem_image_of_mem.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u1} ι _inst_6) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) i (Finset.mem_univ.{u1} ι _inst_6 i))), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) -> R) (Finsupp.hasCoeToFun.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u3 u2)), max (succ u3) (succ (max u3 u2))} (LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u3 u2} R R M (Finsupp.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u3, u2, u2} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u3, u2, u3} (coeSort.{succ u3, succ (succ u3)} (Finset.{u3} M) Type.{u3} (Finset.hasCoeToSort.{u3} M) (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Finset.{u3} M) (Finset.hasMem.{u3} M) x (Finset.image.{u1, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) (Finset.univ.{u1} ι _inst_6))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Fintype.{u2} ι] [_inst_7 : DecidableEq.{succ u3} M] (x : M) (i : ι) (h : optParam.{0} (Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (Finset.mem_image_of_mem.{u3, u2} ι M (fun (a : M) (b : M) => _inst_7 a b) (Finset.univ.{u2} ι _inst_6) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) i (Finset.mem_univ.{u2} ι _inst_6 i))), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) (fun (_x : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) => R) _x) (Finsupp.funLike.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u3, u1, u3, max u1 u3} (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u1 u3} R (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u1 u3, max u1 u3} R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u1 u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u1 u3} R R M (Finsupp.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u1, u1} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u3, u1, u3} (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6)))) R M _inst_1 _inst_2 _inst_3 (Basis.reindexFinsetRange.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b _inst_6 (fun (a : M) (b : M) => _inst_7 a b))) x) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Finset.{u3} M) (Finset.instMembershipFinset.{u3} M) x (Finset.image.{u2, u3} ι M (fun (a : M) (b : M) => _inst_7 a b) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b) (Finset.univ.{u2} ι _inst_6))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i) h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) i)
+Case conversion may be inaccurate. Consider using '#align basis.reindex_finset_range_repr Basis.reindexFinsetRange_reprₓ'. -/
 @[simp]
 theorem reindexFinsetRange_repr (x : M) (i : ι)
     (h := Finset.mem_image_of_mem b (Finset.mem_univ i)) :
@@ -573,6 +897,12 @@ end Fintype
 
 end Reindex
 
+/- warning: basis.linear_independent -> Basis.linearIndependent is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), LinearIndependent.{u1, u2, u3} ι R M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b) _inst_1 _inst_2 _inst_3
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), LinearIndependent.{u3, u2, u1} ι R M (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b) _inst_1 _inst_2 _inst_3
+Case conversion may be inaccurate. Consider using '#align basis.linear_independent Basis.linearIndependentₓ'. -/
 protected theorem linearIndependent : LinearIndependent R b :=
   linearIndependent_iff.mpr fun l hl =>
     calc
@@ -581,20 +911,44 @@ protected theorem linearIndependent : LinearIndependent R b :=
       
 #align basis.linear_independent Basis.linearIndependent
 
+/- warning: basis.ne_zero -> Basis.ne_zero is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u2} R] (i : ι), Ne.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] (b : Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) [_inst_6 : Nontrivial.{u3} R] (i : ι), Ne.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2))))
+Case conversion may be inaccurate. Consider using '#align basis.ne_zero Basis.ne_zeroₓ'. -/
 protected theorem ne_zero [Nontrivial R] (i) : b i ≠ 0 :=
   b.LinearIndependent.NeZero i
 #align basis.ne_zero Basis.ne_zero
 
+/- warning: basis.mem_span -> Basis.mem_span is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b)))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : M), Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b)))
+Case conversion may be inaccurate. Consider using '#align basis.mem_span Basis.mem_spanₓ'. -/
 protected theorem mem_span (x : M) : x ∈ span R (range b) :=
   by
   rw [← b.total_repr x, Finsupp.total_apply, Finsupp.sum]
   exact Submodule.sum_mem _ fun i hi => Submodule.smul_mem _ _ (Submodule.subset_span ⟨i, rfl⟩)
 #align basis.mem_span Basis.mem_span
 
+/- warning: basis.span_eq -> Basis.span_eq is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b))) (Top.top.{u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.hasTop.{u2, u3} R M _inst_1 _inst_2 _inst_3))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{succ u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.span.{u2, u3} R M _inst_1 _inst_2 _inst_3 (Set.range.{u3, succ u1} M ι (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) b))) (Top.top.{u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.instTopSubmodule.{u2, u3} R M _inst_1 _inst_2 _inst_3))
+Case conversion may be inaccurate. Consider using '#align basis.span_eq Basis.span_eqₓ'. -/
 protected theorem span_eq : span R (range b) = ⊤ :=
   eq_top_iff.mpr fun x _ => b.mem_span x
 #align basis.span_eq Basis.span_eq
 
+/- warning: basis.index_nonempty -> Basis.index_nonempty is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall [_inst_6 : Nontrivial.{u3} M], Nonempty.{succ u1} ι)
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2], (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) -> (forall [_inst_6 : Nontrivial.{u1} M], Nonempty.{succ u3} ι)
+Case conversion may be inaccurate. Consider using '#align basis.index_nonempty Basis.index_nonemptyₓ'. -/
 theorem index_nonempty (b : Basis ι R M) [Nontrivial M] : Nonempty ι :=
   by
   obtain ⟨x, y, ne⟩ : ∃ x y : M, x ≠ y := Nontrivial.exists_pair_ne
@@ -602,6 +956,12 @@ theorem index_nonempty (b : Basis ι R M) [Nontrivial M] : Nonempty ι :=
   exact ⟨i⟩
 #align basis.index_nonempty Basis.index_nonempty
 
+/- warning: basis.mem_submodule_iff -> Basis.mem_submodule_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] {P : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (c : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => Eq.{succ u3} M x (Finsupp.sum.{u1, u2, u3} ι R M (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 c (fun (i : ι) (x : R) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) x ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P)) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P))) b i))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (fun (c : Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) => Eq.{succ u2} M x (Finsupp.sum.{u1, u3, u2} ι R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_2 c (fun (i : ι) (x : R) => HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _x) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
+Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff Basis.mem_submodule_iffₓ'. -/
 /-- If the submodule `P` has a basis, `x ∈ P` iff it is a linear combination of basis vectors. -/
 theorem mem_submodule_iff {P : Submodule R M} (b : Basis ι R P) {x : M} :
     x ∈ P ↔ ∃ c : ι →₀ R, x = Finsupp.sum c fun i x => x • b i :=
@@ -618,6 +978,7 @@ variable (S : Type _) [Semiring S] [Module S M']
 
 variable [SMulCommClass R S M']
 
+#print Basis.constr /-
 /-- Construct a linear map given the value at the basis.
 
 This definition is parameterized over an extra `semiring S`,
@@ -643,37 +1004,80 @@ def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M'
     refine' b.ext fun i => _
     simp
 #align basis.constr Basis.constr
+-/
 
+/- warning: basis.constr_def -> Basis.constr_def is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u2, u2, u2, u3, max u4 u2, u4} R R R M (Finsupp.{u4, u2} M' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 _inst_3 (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.total.{u4, u4, u2} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u2, u2, u2, u3, max u1 u2, max u4 u2} R R R M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (Finsupp.{u4, u2} M' R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u2} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (Finsupp.module.{u4, u2, u2} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Finsupp.lmapDomain.{u1, u2, u2, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1) M' f) ((fun (a : Sort.{max (succ u3) (succ (max u1 u2))}) (b : Sort.{max (succ u3) (succ (max u1 u2))}) [self : HasLiftT.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} a b] => self.0) (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (HasLiftT.mk.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (CoeTCₓ.coe.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (coeBase.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearMap.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1))))) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b))))
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M'), Eq.{max (succ u5) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), max (succ u2) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u5) u4, u1, max u2 u4, max u5 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u5 u4} (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u5 u4} S (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u5 u4, max (max u2 u5) u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u5} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u5 u4} S S (ι -> M') (LinearMap.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u5, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u5, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (LinearMap.comp.{u3, u3, u3, u5, max u3 u4, u4} R R R M (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) M' _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_4 _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.total.{u4, u4, u3} M' M' R _inst_1 _inst_4 _inst_5 (id.{succ u4} M')) (LinearMap.comp.{u3, u3, u3, u5, max u3 u2, max u3 u4} R R R M (Finsupp.{u2, u3} ι R (AddMonoid.toZero.{u3} R (AddCommMonoid.toAddMonoid.{u3} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (Finsupp.{u4, u3} M' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} M' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} M' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Finsupp.lmapDomain.{u2, u3, u3, u4} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1) M' f) (LinearEquiv.toLinearMap.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b))))
+Case conversion may be inaccurate. Consider using '#align basis.constr_def Basis.constr_defₓ'. -/
 theorem constr_def (f : ι → M') :
     b.constr S f = Finsupp.total M' M' R id ∘ₗ Finsupp.lmapDomain R R f ∘ₗ ↑b.repr :=
   rfl
 #align basis.constr_def Basis.constr_def
 
+/- warning: basis.constr_apply -> Basis.constr_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u1, u2, u4} ι R M' (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_4 (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) a (f b)))
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) x) (Finsupp.sum.{u2, u3, u5} ι R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) _inst_4 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) x) (fun (b : ι) (a : R) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) a (f b)))
+Case conversion may be inaccurate. Consider using '#align basis.constr_apply Basis.constr_applyₓ'. -/
 theorem constr_apply (f : ι → M') (x : M) : b.constr S f x = (b.repr x).Sum fun b a => a • f b :=
   by
   simp only [constr_def, LinearMap.comp_apply, Finsupp.lmapDomain_apply, Finsupp.total_apply]
   rw [Finsupp.sum_mapDomain_index] <;> simp [add_smul]
 #align basis.constr_apply Basis.constr_apply
 
+/- warning: basis.constr_basis -> Basis.constr_basis is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)) (f i)
+but is expected to have type
+  forall {ι : Type.{u4}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u5} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_6 _inst_4 _inst_7))))] (f : ι -> M') (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u4) (succ u2)) (succ u5), max (succ u4) (succ u5), max (succ u2) (succ u5)} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u4 u5} S (ι -> M') (AddMonoid.toZero.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u4 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u4 u2) u5, u1, max u4 u5, max u2 u5} (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u5} (ι -> M') (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u5} (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u5} S (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u4 u5, max u2 u5, max (max u4 u2) u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u4 u5, max u5 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u4 u5, max u2 u5} S S (ι -> M') (LinearMap.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u4, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u4, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u4, u3, u2, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (f i)
+Case conversion may be inaccurate. Consider using '#align basis.constr_basis Basis.constr_basisₓ'. -/
 @[simp]
 theorem constr_basis (f : ι → M') (i : ι) : (b.constr S f : M → M') (b i) = f i := by
   simp [Basis.constr_apply, b.repr_self]
 #align basis.constr_basis Basis.constr_basis
 
+/- warning: basis.constr_eq -> Basis.constr_eq is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u4} M' (g i) (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) -> (Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] {g : ι -> M'} {f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5}, (forall (i : ι), Eq.{succ u3} M' (g i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) -> (Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) g) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) g) f)
+Case conversion may be inaccurate. Consider using '#align basis.constr_eq Basis.constr_eqₓ'. -/
 theorem constr_eq {g : ι → M'} {f : M →ₗ[R] M'} (h : ∀ i, g i = f (b i)) : b.constr S g = f :=
   b.ext fun i => (b.constr_basis S g i).trans (h i)
 #align basis.constr_eq Basis.constr_eq
 
+/- warning: basis.constr_self -> Basis.constr_self is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) f
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u4}} {M' : Type.{u3}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u5, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u3} M'] [_inst_5 : Module.{u5, u3} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u3} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u3} R S M' (SMulZeroClass.toSMul.{u5, u3} R M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u5, u3} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u3} S M' (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u3} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u3} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' _inst_4)) (Module.toMulActionWithZero.{u1, u3} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ u3)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u3), max (succ u2) (succ u3), max (succ u4) (succ u3)} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u3} S (ι -> M') (AddMonoid.toZero.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u3, u1, max u2 u3, max u4 u3} (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> M') (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u3} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u4 u3} S (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u4 u3, max (max u2 u4) u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u3, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u4 u3} S S (ι -> M') (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u4, u3} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (fun (i : ι) => FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (LinearMap.{u5, u5, u4, u3} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u3} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u5)) (succ u4), succ u2, succ u4} (Basis.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u5, u4} ι R M _inst_1 _inst_2 _inst_3) b i))) f
+Case conversion may be inaccurate. Consider using '#align basis.constr_self Basis.constr_selfₓ'. -/
 theorem constr_self (f : M →ₗ[R] M') : (b.constr S fun i => f (b i)) = f :=
   b.constr_eq S fun x => rfl
 #align basis.constr_self Basis.constr_self
 
+/- warning: basis.constr_range -> Basis.constr_range is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u1} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u2, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u2, u2, u3, u4, max u3 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomSurjective.ids.{u2} R _inst_1) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u2, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u1} M' ι f))
+but is expected to have type
+  forall {ι : Type.{u5}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u5, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u3, u1, u4} R S M' (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u4} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u4} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] [_inst_9 : Nonempty.{succ u5} ι] {f : ι -> M'}, Eq.{succ u4} (Submodule.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (LinearMap.range.{u3, u3, u2, u4, max u2 u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) (LinearMap.instSemilinearMapClassLinearMap.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomSurjective.ids.{u3} R _inst_1) (FunLike.coe.{max (max (succ u5) (succ u2)) (succ u4), max (succ u5) (succ u4), max (succ u2) (succ u4)} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u5 u4} S (ι -> M') (AddMonoid.toZero.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u5 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u5 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u5 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u5 u2) u4, u1, max u5 u4, max u2 u4} (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u5 u4} (ι -> M') (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u2 u4} (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u5 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u2 u4} S (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u5 u4, max u2 u4, max (max u5 u2) u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u5 u4, max u4 u2} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u5 u4, max u2 u4} S S (ι -> M') (LinearMap.{u3, u3, u2, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u5, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u2, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u5, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u2, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u5, u3, u2, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) f)) (Submodule.span.{u3, u4} R M' _inst_1 _inst_4 _inst_5 (Set.range.{u4, succ u5} M' ι f))
+Case conversion may be inaccurate. Consider using '#align basis.constr_range Basis.constr_rangeₓ'. -/
 theorem constr_range [Nonempty ι] {f : ι → M'} : (b.constr S f).range = span R (range f) := by
   rw [b.constr_def S f, LinearMap.range_comp, LinearMap.range_comp, LinearEquiv.range, ←
     Finsupp.supported_univ, Finsupp.lmapDomain_supported, ← Set.image_univ, ←
     Finsupp.span_image_eq_map_total, Set.image_id]
 #align basis.constr_range Basis.constr_range
 
+/- warning: basis.constr_comp -> Basis.constr_comp is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_6 : Semiring.{u5} S] [_inst_7 : Module.{u5, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_6)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_6) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u1, succ u4, succ u4} ι M' M' (coeFn.{succ u4, succ u4} (LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (fun (_x : LinearMap.{u2, u2, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) => M' -> M') (LinearMap.hasCoeToFun.{u2, u2, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f) v)) (LinearMap.comp.{u2, u2, u2, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) f (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_6 _inst_6 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_6 _inst_4 _inst_7) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_6)) (RingHomInvPair.ids.{u5} S _inst_6) (RingHomInvPair.ids.{u5} S _inst_6)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u5}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u5} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u5, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u5, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u5, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_6 : Semiring.{u1} S] [_inst_7 : Module.{u1, u4} S M' _inst_6 _inst_4] [_inst_8 : SMulCommClass.{u5, u1, u4} R S M' (SMulZeroClass.toSMul.{u5, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u4} R M' (MonoidWithZero.toZero.{u5} R (Semiring.toMonoidWithZero.{u5} R _inst_1)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u4} R M' (Semiring.toMonoidWithZero.{u5} R _inst_1) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u5, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u4} S M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u4} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u4} S M' (Semiring.toMonoidWithZero.{u1} S _inst_6) (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (Module.toMulActionWithZero.{u1, u4} S M' _inst_6 _inst_4 _inst_7))))] (f : LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) (v : ι -> M'), Eq.{max (succ u3) (succ u4)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (a : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M') => M') a) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) (Function.comp.{succ u2, succ u4, succ u4} ι M' M' (FunLike.coe.{succ u4, succ u4, succ u4} (LinearMap.{u5, u5, u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M' M' _inst_4 _inst_4 _inst_5 _inst_5) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M') => M') _x) (LinearMap.instFunLikeLinearMap.{u5, u5, u4, u4} R R M' M' _inst_1 _inst_1 _inst_4 _inst_4 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f) v)) (LinearMap.comp.{u5, u5, u5, u3, u4, u4} R R R M M' M' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_4 _inst_3 _inst_5 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) (RingHomCompTriple.ids.{u5, u5} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) f (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), max (succ u3) (succ u4)} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u4} S (ι -> M') (AddMonoid.toZero.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u4} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u4} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u4} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)))))) (SMulZeroClass.toSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u1, max u2 u4, max u3 u4} (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_6)) (AddCommMonoid.toAddMonoid.{max u2 u4} (ι -> M') (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u3 u4} (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u4} S (ι -> M') _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7))) (Module.toDistribMulAction.{u1, max u3 u4} S (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u4, max u3 u4, max (max u2 u3) u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u4, max u4 u3} S S _inst_6 _inst_6 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8)) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u4, max u3 u4} S S (ι -> M') (LinearMap.{u5, u5, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_6 _inst_6 (Pi.addCommMonoid.{u2, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u5, u5, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1))) (Pi.module.{u2, u4, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_6 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_7)) (LinearMap.instModuleLinearMapAddCommMonoid.{u5, u5, u1, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u5} R (Semiring.toNonAssocSemiring.{u5} R _inst_1)) _inst_6 _inst_7 _inst_8) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_6)) (RingHomInvPair.ids.{u1} S _inst_6) (RingHomInvPair.ids.{u1} S _inst_6)))))) (Basis.constr.{u2, u5, u3, u4, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_6 _inst_7 _inst_8) v))
+Case conversion may be inaccurate. Consider using '#align basis.constr_comp Basis.constr_compₓ'. -/
 @[simp]
 theorem constr_comp (f : M' →ₗ[R] M') (v : ι → M') : b.constr S (f ∘ v) = f.comp (b.constr S v) :=
   b.ext fun i => by simp only [Basis.constr_basis, LinearMap.comp_apply]
@@ -687,32 +1091,60 @@ variable (b' : Basis ι' R M') (e : ι ≃ ι')
 
 variable [AddCommMonoid M''] [Module R M'']
 
+#print Basis.equiv /-
 /-- If `b` is a basis for `M` and `b'` a basis for `M'`, and the index types are equivalent,
 `b.equiv b' e` is a linear equivalence `M ≃ₗ[R] M'`, mapping `b i` to `b' (e i)`. -/
 protected def equiv : M ≃ₗ[R] M' :=
   b.repr.trans (b'.reindex e.symm).repr.symm
 #align basis.equiv Basis.equiv
+-/
 
+/- warning: basis.equiv_apply -> Basis.equiv_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{succ u5} M' (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b i)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b' (coeFn.{max 1 (max (succ u1) (succ u2)) (succ u2) (succ u1), max (succ u1) (succ u2)} (Equiv.{succ u1, succ u2} ι ι') (fun (_x : Equiv.{succ u1, succ u2} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u1, succ u2} ι ι') e i))
+but is expected to have type
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (b' : Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u4, succ u1} ι ι'), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' _inst_1 _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equiv.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M _inst_1 _inst_2 _inst_3) b i)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' (FunLike.coe.{max (succ u4) (succ u1), succ u4, succ u1} (Equiv.{succ u4, succ u1} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.805 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} ι ι') e i))
+Case conversion may be inaccurate. Consider using '#align basis.equiv_apply Basis.equiv_applyₓ'. -/
 @[simp]
 theorem equiv_apply : b.Equiv b' e (b i) = b' (e i) := by simp [Basis.equiv]
 #align basis.equiv_apply Basis.equiv_apply
 
+#print Basis.equiv_refl /-
 @[simp]
 theorem equiv_refl : b.Equiv b (Equiv.refl ι) = LinearEquiv.refl R M :=
   b.ext' fun i => by simp
 #align basis.equiv_refl Basis.equiv_refl
+-/
 
+/- warning: basis.equiv_symm -> Basis.equiv_symm is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u5) (succ u4)} (LinearEquiv.{u3, u3, u5, u4} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) (LinearEquiv.symm.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e)) (Basis.equiv.{u2, u1, u3, u5, u4} ι' ι R M' M _inst_1 _inst_4 _inst_5 _inst_2 _inst_3 b' b (Equiv.symm.{succ u1, succ u2} ι ι' e))
+but is expected to have type
+  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u2, succ u1} ι ι'), Eq.{max (succ u5) (succ u4)} (LinearEquiv.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) (LinearEquiv.symm.{u3, u3, u5, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equiv.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e)) (Basis.equiv.{u1, u2, u3, u4, u5} ι' ι R M' M _inst_1 _inst_4 _inst_5 _inst_2 _inst_3 b' b (Equiv.symm.{succ u2, succ u1} ι ι' e))
+Case conversion may be inaccurate. Consider using '#align basis.equiv_symm Basis.equiv_symmₓ'. -/
 @[simp]
 theorem equiv_symm : (b.Equiv b' e).symm = b'.Equiv b e.symm :=
   b'.ext' fun i => (b.Equiv b' e).Injective (by simp)
 #align basis.equiv_symm Basis.equiv_symm
 
+/- warning: basis.equiv_trans -> Basis.equiv_trans is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} {M'' : Type.{u6}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) [_inst_6 : AddCommMonoid.{u6} M''] [_inst_7 : Module.{u3, u6} R M'' _inst_1 _inst_6] {ι'' : Type.{u7}} (b'' : Basis.{u7, u3, u6} ι'' R M'' _inst_1 _inst_6 _inst_7) (e : Equiv.{succ u1, succ u2} ι ι') (e' : Equiv.{succ u2, succ u7} ι' ι''), Eq.{max (succ u4) (succ u6)} (LinearEquiv.{u3, u3, u4, u6} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M M'' _inst_2 _inst_6 _inst_3 _inst_7) (LinearEquiv.trans.{u3, u3, u3, u4, u5, u6} R R R M M' M'' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_6 _inst_3 _inst_5 _inst_7 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomCompTriple.right_ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomCompTriple.right_ids.{u3, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (Basis.equiv.{u2, u7, u3, u5, u6} ι' ι'' R M' M'' _inst_1 _inst_4 _inst_5 _inst_6 _inst_7 b' b'' e')) (Basis.equiv.{u1, u7, u3, u4, u6} ι ι'' R M M'' _inst_1 _inst_2 _inst_3 _inst_6 _inst_7 b b'' (Equiv.trans.{succ u1, succ u2, succ u7} ι ι' ι'' e e'))
+but is expected to have type
+  forall {ι : Type.{u4}} {ι' : Type.{u3}} {R : Type.{u6}} {M : Type.{u2}} {M' : Type.{u1}} {M'' : Type.{u5}} [_inst_1 : Semiring.{u6} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u6, u2} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u1} M'] [_inst_5 : Module.{u6, u1} R M' _inst_1 _inst_4] (b : Basis.{u4, u6, u2} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u3, u6, u1} ι' R M' _inst_1 _inst_4 _inst_5) [_inst_6 : AddCommMonoid.{u5} M''] [_inst_7 : Module.{u6, u5} R M'' _inst_1 _inst_6] {ι'' : Type.{u7}} (b'' : Basis.{u7, u6, u5} ι'' R M'' _inst_1 _inst_6 _inst_7) (e : Equiv.{succ u4, succ u3} ι ι') (e' : Equiv.{succ u3, succ u7} ι' ι''), Eq.{max (succ u2) (succ u5)} (LinearEquiv.{u6, u6, u2, u5} R R _inst_1 _inst_1 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) M M'' _inst_2 _inst_6 _inst_3 _inst_7) (LinearEquiv.trans.{u6, u6, u6, u2, u1, u5} R R R M M' M'' _inst_1 _inst_1 _inst_1 _inst_2 _inst_4 _inst_6 _inst_3 _inst_5 _inst_7 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1)) (RingHomCompTriple.ids.{u6, u6} R R _inst_1 _inst_1 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1))) (RingHomCompTriple.ids.{u6, u6} R R _inst_1 _inst_1 (RingHom.id.{u6} R (Semiring.toNonAssocSemiring.{u6} R _inst_1))) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) (RingHomInvPair.ids.{u6} R _inst_1) (Basis.equiv.{u4, u3, u6, u2, u1} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e) (Basis.equiv.{u3, u7, u6, u1, u5} ι' ι'' R M' M'' _inst_1 _inst_4 _inst_5 _inst_6 _inst_7 b' b'' e')) (Basis.equiv.{u4, u7, u6, u2, u5} ι ι'' R M M'' _inst_1 _inst_2 _inst_3 _inst_6 _inst_7 b b'' (Equiv.trans.{succ u4, succ u3, succ u7} ι ι' ι'' e e'))
+Case conversion may be inaccurate. Consider using '#align basis.equiv_trans Basis.equiv_transₓ'. -/
 @[simp]
 theorem equiv_trans {ι'' : Type _} (b'' : Basis ι'' R M'') (e : ι ≃ ι') (e' : ι' ≃ ι'') :
     (b.Equiv b' e).trans (b'.Equiv b'' e') = b.Equiv b'' (e.trans e') :=
   b.ext' fun i => by simp
 #align basis.equiv_trans Basis.equiv_trans
 
+/- warning: basis.map_equiv -> Basis.map_equiv is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u1, succ u2} ι ι'), Eq.{max (succ u1) (succ u3) (succ u5)} (Basis.{u1, u3, u5} ι R M' _inst_1 _inst_4 _inst_5) (Basis.map.{u1, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b (Basis.equiv.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e)) (Basis.reindex.{u2, u1, u3, u5} ι' ι R M' _inst_1 _inst_4 _inst_5 b' (Equiv.symm.{succ u1, succ u2} ι ι' e))
+but is expected to have type
+  forall {ι : Type.{u5}} {ι' : Type.{u2}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u1}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u1} M'] [_inst_5 : Module.{u4, u1} R M' _inst_1 _inst_4] (b : Basis.{u5, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u4, u1} ι' R M' _inst_1 _inst_4 _inst_5) (e : Equiv.{succ u5, succ u2} ι ι'), Eq.{max (max (succ u5) (succ u4)) (succ u1)} (Basis.{u5, u4, u1} ι R M' _inst_1 _inst_4 _inst_5) (Basis.map.{u5, u4, u3, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b (Basis.equiv.{u5, u2, u4, u3, u1} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' e)) (Basis.reindex.{u2, u5, u4, u1} ι' ι R M' _inst_1 _inst_4 _inst_5 b' (Equiv.symm.{succ u5, succ u2} ι ι' e))
+Case conversion may be inaccurate. Consider using '#align basis.map_equiv Basis.map_equivₓ'. -/
 @[simp]
 theorem map_equiv (b : Basis ι R M) (b' : Basis ι' R M') (e : ι ≃ ι') :
     b.map (b.Equiv b' e) = b'.reindex e.symm :=
@@ -727,6 +1159,12 @@ section Prod
 
 variable (b' : Basis ι' R M')
 
+/- warning: basis.prod -> Basis.prod is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4], (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) -> (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) -> (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))
+but is expected to have type
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4], (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) -> (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) -> (Basis.{max u2 u1, u3, max u5 u4} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))
+Case conversion may be inaccurate. Consider using '#align basis.prod Basis.prodₓ'. -/
 /-- `basis.prod` maps a `ι`-indexed basis for `M` and a `ι'`-indexed basis for `M'`
 to a `ι ⊕ ι'`-index basis for `M × M'`.
 For the specific case of `R × R`, see also `basis.fin_two_prod`. -/
@@ -734,16 +1172,34 @@ protected def prod : Basis (Sum ι ι') R (M × M') :=
   of_repr ((b.repr.Prod b'.repr).trans (Finsupp.sumFinsuppLEquivProdFinsupp R).symm)
 #align basis.prod Basis.prod
 
+/- warning: basis.prod_repr_inl -> Basis.prod_repr_inl is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u4, u5} M M') (i : ι), Eq.{succ u3} R (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => (Sum.{u1, u2} ι ι') -> R) (Finsupp.hasCoeToFun.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ (max u4 u5)) (succ (max (max u1 u2) u3)), max (succ (max u4 u5)) (succ (max (max u1 u2) u3))} (LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => (Prod.{u4, u5} M M') -> (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, max u4 u5, max (max u1 u2) u3} R R (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u1, u2} ι ι' i)) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u4) (succ (max u1 u3)), max (succ u4) (succ (max u1 u3))} (LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u4, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M -> (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u4, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u4, u5} M M' x)) i)
+but is expected to have type
+  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inl.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u5), succ u5, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u5} R M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u5} R M (AddMonoid.toAddZeroClass.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u5} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u5, u3, u5, max u2 u3} (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u5} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u5} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, max u2 u3, max (max u2 u3) u5} R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, max u2 u3, max (max u2 u3) u5} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u5, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, max u2 u3} R R M (Finsupp.{u2, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3 b) (Prod.fst.{u5, u4} M M' x)) i)
+Case conversion may be inaccurate. Consider using '#align basis.prod_repr_inl Basis.prod_repr_inlₓ'. -/
 @[simp]
 theorem prod_repr_inl (x) (i) : (b.Prod b').repr x (Sum.inl i) = b.repr x.1 i :=
   rfl
 #align basis.prod_repr_inl Basis.prod_repr_inl
 
+/- warning: basis.prod_repr_inr -> Basis.prod_repr_inr is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u4, u5} M M') (i : ι'), Eq.{succ u3} R (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => (Sum.{u1, u2} ι ι') -> R) (Finsupp.hasCoeToFun.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ (max u4 u5)) (succ (max (max u1 u2) u3)), max (succ (max u4 u5)) (succ (max (max u1 u2) u3))} (LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, max u4 u5, max (max u1 u2) u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => (Prod.{u4, u5} M M') -> (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, max u4 u5, max (max u1 u2) u3} R R (Prod.{u4, u5} M M') (Finsupp.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u1 u2, u3} (Sum.{u1, u2} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.module.{max u1 u2, u3, u3} (Sum.{u1, u2} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u1, u2} ι ι' i)) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (fun (_x : Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) => ι' -> R) (Finsupp.hasCoeToFun.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (coeFn.{max (succ u5) (succ (max u2 u3)), max (succ u5) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (fun (_x : LinearEquiv.{u3, u3, u5, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) => M' -> (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u3, u3, u5, max u2 u3} R R M' (Finsupp.{u2, u3} ι' R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u2, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.module.{u2, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)) (Basis.repr.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u4, u5} M M' x)) i)
+but is expected to have type
+  forall {ι : Type.{u2}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u3, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u3, u4} R M' _inst_1 _inst_4] (b : Basis.{u2, u3, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5) (x : Prod.{u5, u4} M M') (i : ι'), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ (max u2 u1)) (succ u3), succ (max u2 u1), succ u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Sum.{u2, u1} ι ι') (fun (_x : Sum.{u2, u1} ι ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Sum.{u2, u1} ι ι') => R) _x) (Finsupp.funLike.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (max (max (succ u2) (succ u1)) (succ u3)) (succ u5)) (succ u4), max (succ u5) (succ u4), max (max (succ u2) (succ u1)) (succ u3)} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (Prod.{u5, u4} M M') (fun (_x : Prod.{u5, u4} M M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u5, u4} M M') => Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toZero.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribSMul.toSMulZeroClass.{u3, max u5 u4} R (Prod.{u5, u4} M M') (AddMonoid.toAddZeroClass.{max u5 u4} (Prod.{u5, u4} M M') (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4))) (DistribMulAction.toDistribSMul.{u3, max u5 u4} R (Prod.{u5, u4} M M') (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))))) (SMulZeroClass.toSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max (max u2 u1) u3) u5) u4, u3, max u5 u4, max (max u2 u1) u3} (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u5 u4} (Prod.{u5, u4} M M') (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4)) (AddCommMonoid.toAddMonoid.{max (max u2 u1) u3} (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u5 u4} R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Module.toDistribMulAction.{u3, max (max u2 u1) u3} R (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u5 u4, max (max u2 u1) u3, max (max (max (max u2 u1) u3) u5) u4} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, max u5 u4, max u3 u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u5 u4, max (max u2 u1) u3} R R (Prod.{u5, u4} M M') (Finsupp.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Finsupp.addCommMonoid.{max u2 u1, u3} (Sum.{u2, u1} ι ι') R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{max u2 u1, u3, u3} (Sum.{u2, u1} ι ι') R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{max u2 u1, u3, max u5 u4} (Sum.{u2, u1} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u3, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (Basis.prod.{u2, u1, u3, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b')) x) (Sum.inr.{u2, u1} ι ι' i)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), succ u4, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u4} R M' (AddMonoid.toZero.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u4} R M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u4} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u4, u3, u4, max u1 u3} (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M' _inst_4) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M' _inst_1 _inst_4 _inst_5) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u1 u3, max (max u1 u3) u4} R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u1 u3, max (max u1 u3) u4} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u4, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u1 u3} R R M' (Finsupp.{u1, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_4 (Finsupp.addCommMonoid.{u1, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_5 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι' R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u4} ι' R M' _inst_1 _inst_4 _inst_5 b') (Prod.snd.{u5, u4} M M' x)) i)
+Case conversion may be inaccurate. Consider using '#align basis.prod_repr_inr Basis.prod_repr_inrₓ'. -/
 @[simp]
 theorem prod_repr_inr (x) (i) : (b.Prod b').repr x (Sum.inr i) = b'.repr x.2 i :=
   rfl
 #align basis.prod_repr_inr Basis.prod_repr_inr
 
+/- warning: basis.prod_apply_inl_fst -> Basis.prod_apply_inl_fst is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u4} M (Prod.fst.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u1, u2} ι ι' i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b i)
+but is expected to have type
+  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u1, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u1, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u4} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M (Prod.fst.{u5, u4} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u5)) (succ u4), max (succ u3) (succ u2), max (succ u5) (succ u4)} (Basis.{max u2 u3, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u3, u2} ι ι') => Prod.{u5, u4} M M') _x) (Basis.funLike.{max u3 u2, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u3, u2} ι ι' i))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u5), succ u3, succ u5} (Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) b i)
+Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inl_fst Basis.prod_apply_inl_fstₓ'. -/
 theorem prod_apply_inl_fst (i) : (b.Prod b' (Sum.inl i)).1 = b i :=
   b.repr.Injective <| by
     ext j
@@ -753,6 +1209,12 @@ theorem prod_apply_inl_fst (i) : (b.Prod b' (Sum.inl i)).1 = b i :=
     apply Finsupp.single_apply_left Sum.inl_injective
 #align basis.prod_apply_inl_fst Basis.prod_apply_inl_fst
 
+/- warning: basis.prod_apply_inr_fst -> Basis.prod_apply_inr_fst is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u4} M (Prod.fst.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u1, u2} ι ι' i))) (OfNat.ofNat.{u4} M 0 (OfNat.mk.{u4} M 0 (Zero.zero.{u4} M (AddZeroClass.toHasZero.{u4} M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u5}} {M' : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u5} M] [_inst_3 : Module.{u1, u5} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u1, u4} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u5} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u4} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M (Prod.fst.{u5, u4} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u5)) (succ u4), max (succ u3) (succ u2), max (succ u5) (succ u4)} (Basis.{max u2 u3, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u3, u2} ι ι') => Prod.{u5, u4} M M') _x) (Basis.funLike.{max u3 u2, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u5, u4} M M') _inst_1 (Prod.instAddCommMonoidSum.{u5, u4} M M' _inst_2 _inst_4) (Prod.module.{u1, u5, u4} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u5, u4} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u3, u2} ι ι' i))) (OfNat.ofNat.{u5} M 0 (Zero.toOfNat0.{u5} M (AddMonoid.toZero.{u5} M (AddCommMonoid.toAddMonoid.{u5} M _inst_2))))
+Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inr_fst Basis.prod_apply_inr_fstₓ'. -/
 theorem prod_apply_inr_fst (i) : (b.Prod b' (Sum.inr i)).1 = 0 :=
   b.repr.Injective <| by
     ext i
@@ -763,6 +1225,12 @@ theorem prod_apply_inr_fst (i) : (b.Prod b' (Sum.inr i)).1 = 0 :=
     apply Finsupp.single_eq_of_ne Sum.inr_ne_inl
 #align basis.prod_apply_inr_fst Basis.prod_apply_inr_fst
 
+/- warning: basis.prod_apply_inl_snd -> Basis.prod_apply_inl_snd is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u1, u2} ι ι' i))) (OfNat.ofNat.{u5} M' 0 (OfNat.mk.{u5} M' 0 (Zero.zero.{u5} M' (AddZeroClass.toHasZero.{u5} M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u1, u5} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u4)) (succ u5), max (succ u3) (succ u2), max (succ u4) (succ u5)} (Basis.{max u2 u3, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u3, u2} ι ι') => Prod.{u4, u5} M M') _x) (Basis.funLike.{max u3 u2, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inl.{u3, u2} ι ι' i))) (OfNat.ofNat.{u5} M' 0 (Zero.toOfNat0.{u5} M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4))))
+Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inl_snd Basis.prod_apply_inl_sndₓ'. -/
 theorem prod_apply_inl_snd (i) : (b.Prod b' (Sum.inl i)).2 = 0 :=
   b'.repr.Injective <| by
     ext j
@@ -773,6 +1241,12 @@ theorem prod_apply_inl_snd (i) : (b.Prod b' (Sum.inl i)).2 = 0 :=
     apply Finsupp.single_eq_of_ne Sum.inl_ne_inr
 #align basis.prod_apply_inl_snd Basis.prod_apply_inl_snd
 
+/- warning: basis.prod_apply_inr_snd -> Basis.prod_apply_inr_snd is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u1, u2} ι ι' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b' i)
+but is expected to have type
+  forall {ι : Type.{u3}} {ι' : Type.{u2}} {R : Type.{u1}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u1, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u1, u5} R M' _inst_1 _inst_4] (b : Basis.{u3, u1, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : ι'), Eq.{succ u5} M' (Prod.snd.{u4, u5} M M' (FunLike.coe.{max (max (max (max (succ u3) (succ u2)) (succ u1)) (succ u4)) (succ u5), max (succ u3) (succ u2), max (succ u4) (succ u5)} (Basis.{max u2 u3, u1, max u5 u4} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u3, u2} ι ι') (fun (_x : Sum.{u3, u2} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u3, u2} ι ι') => Prod.{u4, u5} M M') _x) (Basis.funLike.{max u3 u2, u1, max u4 u5} (Sum.{u3, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.instAddCommMonoidSum.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u1, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u3, u2, u1, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') (Sum.inr.{u3, u2} ι ι' i))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u5), succ u2, succ u5} (Basis.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u2, u1, u5} ι' R M' _inst_1 _inst_4 _inst_5) b' i)
+Case conversion may be inaccurate. Consider using '#align basis.prod_apply_inr_snd Basis.prod_apply_inr_sndₓ'. -/
 theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
   b'.repr.Injective <| by
     ext i
@@ -782,6 +1256,12 @@ theorem prod_apply_inr_snd (i) : (b.Prod b' (Sum.inr i)).2 = b' i :=
     apply Finsupp.single_apply_left Sum.inr_injective
 #align basis.prod_apply_inr_snd Basis.prod_apply_inr_snd
 
+/- warning: basis.prod_apply -> Basis.prod_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] (b : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u1, u2} ι ι'), Eq.{max (succ u4) (succ u5)} (Prod.{u4, u5} M M') (coeFn.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), max (succ (max u1 u2)) (succ (max u4 u5))} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => (Sum.{u1, u2} ι ι') -> (Prod.{u4, u5} M M')) (FunLike.hasCoeToFun.{max (succ (max u1 u2)) (succ u3) (succ (max u4 u5)), succ (max u1 u2), succ (max u4 u5)} (Basis.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u1, u2} ι ι') (fun (_x : Sum.{u1, u2} ι ι') => Prod.{u4, u5} M M') (Basis.funLike.{max u1 u2, u3, max u4 u5} (Sum.{u1, u2} ι ι') R (Prod.{u4, u5} M M') _inst_1 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5))) (Basis.prod.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u1, u2, max (succ u4) (succ u5)} ι ι' (Prod.{u4, u5} M M') (Function.comp.{succ u1, succ u4, max (succ u4) (succ u5)} ι M (Prod.{u4, u5} M M') (coeFn.{max (succ u4) (succ (max u4 u5)), max (succ u4) (succ (max u4 u5))} (LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u4, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M (Prod.{u4, u5} M M') _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u4, max u4 u5} R R M (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_2 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inl.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M _inst_1 _inst_2 _inst_3)) b)) (Function.comp.{succ u2, succ u5, max (succ u4) (succ u5)} ι' M' (Prod.{u4, u5} M M') (coeFn.{max (succ u5) (succ (max u4 u5)), max (succ u5) (succ (max u4 u5))} (LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (fun (_x : LinearMap.{u3, u3, u5, max u4 u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M' (Prod.{u4, u5} M M') _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) => M' -> (Prod.{u4, u5} M M')) (LinearMap.hasCoeToFun.{u3, u3, u5, max u4 u5} R R M' (Prod.{u4, u5} M M') _inst_1 _inst_1 _inst_4 (Prod.addCommMonoid.{u4, u5} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.inr.{u3, u4, u5} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' _inst_1 _inst_4 _inst_5)) b')) i)
+but is expected to have type
+  forall {ι : Type.{u5}} {ι' : Type.{u4}} {R : Type.{u1}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u1, u2} R M' _inst_1 _inst_4] (b : Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (b' : Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) (i : Sum.{u5, u4} ι ι'), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') i) (FunLike.coe.{max (max (max (max (succ u5) (succ u4)) (succ u1)) (succ u3)) (succ u2), max (succ u5) (succ u4), max (succ u3) (succ u2)} (Basis.{max u4 u5, u1, max u2 u3} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Sum.{u5, u4} ι ι') (fun (_x : Sum.{u5, u4} ι ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Sum.{u5, u4} ι ι') => Prod.{u3, u2} M M') _x) (Basis.funLike.{max u5 u4, u1, max u3 u2} (Sum.{u5, u4} ι ι') R (Prod.{u3, u2} M M') _inst_1 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (Basis.prod.{u5, u4, u1, u3, u2} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b') i) (Sum.elim.{u5, u4, max (succ u3) (succ u2)} ι ι' (Prod.{u3, u2} M M') (Function.comp.{succ u5, succ u3, max (succ u3) (succ u2)} ι M (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u3, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u3, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M (Prod.{u3, u2} M M') _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u3, max u3 u2} R R M (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_2 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_3 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inl.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u5) (succ u1)) (succ u3), succ u5, succ u3} (Basis.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u5, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b)) (Function.comp.{succ u4, succ u2, max (succ u3) (succ u2)} ι' M' (Prod.{u3, u2} M M') (FunLike.coe.{max (succ u3) (succ u2), succ u2, max (succ u3) (succ u2)} (LinearMap.{u1, u1, u2, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M' (Prod.{u3, u2} M M') _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M') => Prod.{u3, u2} M M') _x) (LinearMap.instFunLikeLinearMap.{u1, u1, u2, max u3 u2} R R M' (Prod.{u3, u2} M M') _inst_1 _inst_1 _inst_4 (Prod.instAddCommMonoidSum.{u3, u2} M M' _inst_2 _inst_4) _inst_5 (Prod.module.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (LinearMap.inr.{u1, u3, u2} R M M' _inst_1 _inst_2 _inst_4 _inst_3 _inst_5)) (FunLike.coe.{max (max (succ u4) (succ u1)) (succ u2), succ u4, succ u2} (Basis.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u4, u1, u2} ι' R M' _inst_1 _inst_4 _inst_5) b')) i)
+Case conversion may be inaccurate. Consider using '#align basis.prod_apply Basis.prod_applyₓ'. -/
 @[simp]
 theorem prod_apply (i) :
     b.Prod b' i = Sum.elim (LinearMap.inl R M M' ∘ b) (LinearMap.inr R M M' ∘ b') i := by
@@ -794,6 +1274,12 @@ end Prod
 
 section NoZeroSMulDivisors
 
+/- warning: basis.no_zero_smul_divisors -> Basis.noZeroSMulDivisors is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (NoZeroSMulDivisors.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))))
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u3} R (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))], (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) -> (NoZeroSMulDivisors.{u3, u1} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u1} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u1} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u3, u1} R M _inst_1 _inst_2 _inst_3)))))
+Case conversion may be inaccurate. Consider using '#align basis.no_zero_smul_divisors Basis.noZeroSMulDivisorsₓ'. -/
 -- Can't be an instance because the basis can't be inferred.
 protected theorem noZeroSMulDivisors [NoZeroDivisors R] (b : Basis ι R M) :
     NoZeroSMulDivisors R M :=
@@ -806,12 +1292,24 @@ protected theorem noZeroSMulDivisors [NoZeroDivisors R] (b : Basis ι R M) :
       exact this.resolve_right fun hr => hx (b.repr.map_eq_zero_iff.mp hr)⟩
 #align basis.no_zero_smul_divisors Basis.noZeroSMulDivisors
 
+/- warning: basis.smul_eq_zero -> Basis.smul_eq_zero is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall {c : R} {x : M}, Iff (Eq.{succ u3} M (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) c x) (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))))))) (Or (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) (Eq.{succ u3} M x (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)))))))))
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u3} R (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))], (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) -> (forall {c : R} {x : M}, Iff (Eq.{succ u1} M (HSMul.hSMul.{u3, u1, u1} R M M (instHSMul.{u3, u1} R M (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u1} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u1} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (Module.toMulActionWithZero.{u3, u1} R M _inst_1 _inst_2 _inst_3))))) c x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2))))) (Or (Eq.{succ u3} R c (OfNat.ofNat.{u3} R 0 (Zero.toOfNat0.{u3} R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))))) (Eq.{succ u1} M x (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)))))))
+Case conversion may be inaccurate. Consider using '#align basis.smul_eq_zero Basis.smul_eq_zeroₓ'. -/
 protected theorem smul_eq_zero [NoZeroDivisors R] (b : Basis ι R M) {c : R} {x : M} :
     c • x = 0 ↔ c = 0 ∨ x = 0 :=
   @smul_eq_zero _ _ _ _ _ b.NoZeroSMulDivisors _ _
 #align basis.smul_eq_zero Basis.smul_eq_zero
 
-theorem eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N : Submodule R M)
+/- warning: eq_bot_of_rank_eq_zero -> Basis.eq_bot_of_rank_eq_zero is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall (N : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3), (forall {m : Nat} (v : (Fin m) -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N)), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) N) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x N)))))) v) _inst_1 _inst_2 _inst_3) -> (Eq.{1} Nat m (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero))))) -> (Eq.{succ u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) N (Bot.bot.{u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (Submodule.hasBot.{u2, u3} R M _inst_1 _inst_2 _inst_3))))
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : NoZeroDivisors.{u3} R (NonUnitalNonAssocSemiring.toMul.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))], (Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) -> (forall (N : Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3), (forall {m : Nat} (v : (Fin m) -> (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u1} R M _inst_1 _inst_2 _inst_3)) x N))), (LinearIndependent.{0, u3, u1} (Fin m) R M (Function.comp.{1, succ u1, succ u1} (Fin m) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u1} R M _inst_1 _inst_2 _inst_3)) x N)) M (Subtype.val.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Set.{u1} M) (Set.instMembershipSet.{u1} M) x (SetLike.coe.{u1, u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) N))) v) _inst_1 _inst_2 _inst_3) -> (Eq.{1} Nat m (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))) -> (Eq.{succ u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) N (Bot.bot.{u1} (Submodule.{u3, u1} R M _inst_1 _inst_2 _inst_3) (Submodule.instBotSubmodule.{u3, u1} R M _inst_1 _inst_2 _inst_3))))
+Case conversion may be inaccurate. Consider using '#align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zeroₓ'. -/
+theorem Basis.eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N : Submodule R M)
     (rank_eq : ∀ {m : ℕ} (v : Fin m → N), LinearIndependent R (coe ∘ v : Fin m → M) → m = 0) :
     N = ⊥ := by
   rw [Submodule.eq_bot_iff]
@@ -824,12 +1322,13 @@ theorem eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N : Submod
   simp only [Function.const_apply, Fin.default_eq_zero, Submodule.coe_mk, Finset.univ_unique,
     Function.comp_const, Finset.sum_singleton] at sum_eq
   convert (b.smul_eq_zero.mp sum_eq).resolve_right x_ne
-#align eq_bot_of_rank_eq_zero eq_bot_of_rank_eq_zero
+#align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zero
 
 end NoZeroSMulDivisors
 
 section Singleton
 
+#print Basis.singleton /-
 /-- `basis.singleton ι R` is the basis sending the unique element of `ι` to `1 : R`. -/
 protected def singleton (ι R : Type _) [Unique ι] [Semiring R] : Basis ι R R :=
   of_repr
@@ -840,17 +1339,36 @@ protected def singleton (ι R : Type _) [Unique ι] [Semiring R] : Basis ι R R
       map_add' := fun x y => by simp
       map_smul' := fun c x => by simp }
 #align basis.singleton Basis.singleton
+-/
 
+/- warning: basis.singleton_apply -> Basis.singleton_apply is a dubious translation:
+lean 3 declaration is
+  forall (ι : Type.{u1}) (R : Type.{u2}) [_inst_6 : Unique.{succ u1} ι] [_inst_7 : Semiring.{u2} R] (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Basis.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) (fun (_x : Basis.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) => ι -> R) (FunLike.hasCoeToFun.{max (succ u1) (succ u2), succ u1, succ u2} (Basis.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) ι (fun (_x : ι) => R) (Basis.funLike.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) (Basis.singleton.{u1, u2} ι R _inst_6 _inst_7) i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))))))
+but is expected to have type
+  forall (ι : Type.{u2}) (R : Type.{u1}) [_inst_6 : Unique.{succ u2} ι] [_inst_7 : Semiring.{u1} R] (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => R) i) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Basis.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => R) _x) (Basis.funLike.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (Basis.singleton.{u2, u1} ι R _inst_6 _inst_7) i) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => R) i) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => R) i) (Semiring.toOne.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => R) i) _inst_7)))
+Case conversion may be inaccurate. Consider using '#align basis.singleton_apply Basis.singleton_applyₓ'. -/
 @[simp]
 theorem singleton_apply (ι R : Type _) [Unique ι] [Semiring R] (i) : Basis.singleton ι R i = 1 :=
   apply_eq_iff.mpr (by simp [Basis.singleton])
 #align basis.singleton_apply Basis.singleton_apply
 
+/- warning: basis.singleton_repr -> Basis.singleton_repr is a dubious translation:
+lean 3 declaration is
+  forall (ι : Type.{u1}) (R : Type.{u2}) [_inst_6 : Unique.{succ u1} ι] [_inst_7 : Semiring.{u2} R] (x : R) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (coeFn.{max (succ u2) (succ (max u1 u2)), max (succ u2) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u2, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7) R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) (fun (_x : LinearEquiv.{u2, u2, u2, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7) R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7))) => R -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u2, max u1 u2} R R R (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)))) (Semiring.toModule.{u2} R _inst_7) (Finsupp.module.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7)) (RingHomInvPair.ids.{u2} R _inst_7) (RingHomInvPair.ids.{u2} R _inst_7)) (Basis.repr.{u1, u2, u2} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_7))) (Semiring.toModule.{u2} R _inst_7) (Basis.singleton.{u1, u2} ι R _inst_6 _inst_7)) x) i) x
+but is expected to have type
+  forall (ι : Type.{u2}) (R : Type.{u1}) [_inst_6 : Unique.{succ u2} ι] [_inst_7 : Semiring.{u1} R] (x : R) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : R) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (SMulZeroClass.toSMul.{u1, u1} R R (AddMonoid.toZero.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribSMul.toSMulZeroClass.{u1, u1} R R (AddMonoid.toAddZeroClass.{u1} R (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (DistribMulAction.toDistribSMul.{u1, u1} R R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u1, max u2 u1} (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7)) (AddCommMonoid.toAddMonoid.{u1} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))))) (Module.toDistribMulAction.{u1, u1} R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, max u2 u1, max u2 u1} R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, max u2 u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (LinearEquiv.{u1, u1, u1, max u1 u2} R R _inst_7 _inst_7 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, max u2 u1} R R R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_7))) _inst_7 _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)))) (Semiring.toModule.{u1} R _inst_7) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7)) (RingHomInvPair.ids.{u1} R _inst_7) (RingHomInvPair.ids.{u1} R _inst_7)))))) (Basis.repr.{u2, u1, u1} ι R R _inst_7 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_7))) (Semiring.toModule.{u1} R _inst_7) (Basis.singleton.{u2, u1} ι R _inst_6 _inst_7)) x) i) x
+Case conversion may be inaccurate. Consider using '#align basis.singleton_repr Basis.singleton_reprₓ'. -/
 @[simp]
 theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
     (Basis.singleton ι R).repr x i = x := by simp [Basis.singleton, Unique.eq_default i]
 #align basis.singleton_repr Basis.singleton_repr
 
+/- warning: basis.basis_singleton_iff -> Basis.basis_singleton_iff is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_6 : Ring.{u1} R] [_inst_7 : Nontrivial.{u1} R] [_inst_8 : AddCommGroup.{u2} M] [_inst_9 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)] [_inst_10 : NoZeroSMulDivisors.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_6))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_8))))) (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_6))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_6)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9))))] (ι : Type.{u3}) [_inst_11 : Unique.{succ u3} ι], Iff (Nonempty.{max (succ u3) (succ u1) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9)) (Exists.{succ u2} M (fun (x : M) => Exists.{0} (Ne.{succ u2} M x (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_8))))))))) (fun (H : Ne.{succ u2} M x (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_8))))))))) => forall (y : M), Exists.{succ u1} R (fun (r : R) => Eq.{succ u2} M (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_6))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_6)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9)))) r x) y))))
+but is expected to have type
+  forall {R : Type.{u3}} {M : Type.{u2}} [_inst_6 : Ring.{u3} R] [_inst_7 : Nontrivial.{u3} R] [_inst_8 : AddCommGroup.{u2} M] [_inst_9 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8)] [_inst_10 : NoZeroSMulDivisors.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9))))] (ι : Type.{u1}) [_inst_11 : Unique.{succ u1} ι], Iff (Nonempty.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9)) (Exists.{succ u2} M (fun (x : M) => Exists.{0} (Ne.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8)))))))) (fun (H : Ne.{succ u2} M x (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8)))))))) => forall (y : M), Exists.{succ u3} R (fun (r : R) => Eq.{succ u2} M (HSMul.hSMul.{u3, u2, u2} R M M (instHSMul.{u3, u2} R M (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_6)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_8))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_6) (AddCommGroup.toAddCommMonoid.{u2} M _inst_8) _inst_9))))) r x) y))))
+Case conversion may be inaccurate. Consider using '#align basis.basis_singleton_iff Basis.basis_singleton_iffₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (x «expr ≠ » 0) -/
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
@@ -886,16 +1404,20 @@ section Empty
 
 variable (M)
 
+#print Basis.empty /-
 /-- If `M` is a subsingleton and `ι` is empty, this is the unique `ι`-indexed basis for `M`. -/
 protected def empty [Subsingleton M] [IsEmpty ι] : Basis ι R M :=
   of_repr 0
 #align basis.empty Basis.empty
+-/
 
+#print Basis.emptyUnique /-
 instance emptyUnique [Subsingleton M] [IsEmpty ι] : Unique (Basis ι R M)
     where
   default := Basis.empty M
   uniq := fun ⟨x⟩ => congr_arg of_repr <| Subsingleton.elim _ _
 #align basis.empty_unique Basis.emptyUnique
+-/
 
 end Empty
 
@@ -909,6 +1431,7 @@ open Fintype
 
 variable [Fintype ι] (b : Basis ι R M)
 
+#print Basis.equivFun /-
 /-- A module over `R` with a finite basis is linearly equivalent to functions from its basis to `R`.
 -/
 def Basis.equivFun : M ≃ₗ[R] ι → R :=
@@ -919,13 +1442,22 @@ def Basis.equivFun : M ≃ₗ[R] ι → R :=
         map_smul' := Finsupp.coe_smul } :
       (ι →₀ R) ≃ₗ[R] ι → R)
 #align basis.equiv_fun Basis.equivFun
+-/
 
+#print Module.fintypeOfFintype /-
 /-- A module over a finite ring that admits a finite basis is finite. -/
 def Module.fintypeOfFintype (b : Basis ι R M) [Fintype R] : Fintype M :=
   haveI := Classical.decEq ι
   Fintype.ofEquiv _ b.equiv_fun.to_equiv.symm
 #align module.fintype_of_fintype Module.fintypeOfFintype
+-/
 
+/- warning: module.card_fintype -> Module.card_fintype is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι], (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) -> (forall [_inst_7 : Fintype.{u2} R] [_inst_8 : Fintype.{u3} M], Eq.{1} Nat (Fintype.card.{u3} M _inst_8) (HPow.hPow.{0, 0, 0} Nat Nat Nat (instHPow.{0, 0} Nat Nat (Monoid.Pow.{0} Nat Nat.monoid)) (Fintype.card.{u2} R _inst_7) (Fintype.card.{u1} ι _inst_6)))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι], (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) -> (forall [_inst_7 : Fintype.{u2} R] [_inst_8 : Fintype.{u1} M], Eq.{1} Nat (Fintype.card.{u1} M _inst_8) (HPow.hPow.{0, 0, 0} Nat Nat Nat (instHPow.{0, 0} Nat Nat instPowNat) (Fintype.card.{u2} R _inst_7) (Fintype.card.{u3} ι _inst_6)))
+Case conversion may be inaccurate. Consider using '#align module.card_fintype Module.card_fintypeₓ'. -/
 theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M = card R ^ card ι :=
   by
   classical exact
@@ -935,6 +1467,12 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M
         
 #align module.card_fintype Module.card_fintype
 
+/- warning: basis.equiv_fun_symm_apply -> Basis.equivFun_symm_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} M (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (x i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i)))
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (x : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) x) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u1), succ u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, max u2 u1, u3} (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, u3, max (max u2 u1) u3} R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, u3, max (max u2 u1) u3} R R (ι -> R) M (LinearEquiv.{u1, u1, max u2 u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_2 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (LinearEquiv.symm.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) x) (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (x i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i)))
+Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_symm_apply Basis.equivFun_symm_applyₓ'. -/
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
 @[simp]
@@ -942,31 +1480,67 @@ theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x
   simp [Basis.equivFun, Finsupp.total_apply, Finsupp.sum_fintype]
 #align basis.equiv_fun_symm_apply Basis.equivFun_symm_apply
 
+/- warning: basis.equiv_fun_apply -> Basis.equivFun_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) u) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) u))
+Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_apply Basis.equivFun_applyₓ'. -/
 @[simp]
 theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
   rfl
 #align basis.equiv_fun_apply Basis.equivFun_apply
 
+/- warning: basis.map_equiv_fun -> Basis.map_equivFun is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (succ u4) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u4, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (Basis.equivFun.{u1, u2, u4} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u2, u3, u4} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u2, u2, u2, u4, u3, max u1 u2} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_5 _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomCompTriple.right_ids.{u2, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.symm.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) f) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u4}} {M : Type.{u3}} {M' : Type.{u2}} [_inst_1 : Semiring.{u4} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u4, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u2} M'] [_inst_5 : Module.{u4, u2} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3) (f : LinearEquiv.{u4, u4, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5), Eq.{max (max (succ u1) (succ u4)) (succ u2)} (LinearEquiv.{u4, u4, u2, max u1 u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) M' (ι -> R) _inst_4 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1))) (Basis.equivFun.{u1, u4, u2} ι R M' _inst_1 _inst_4 _inst_5 _inst_6 (Basis.map.{u1, u4, u3, u2} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b f)) (LinearEquiv.trans.{u4, u4, u4, u2, u3, max u1 u4} R R R M' M (ι -> R) _inst_1 _inst_1 _inst_1 _inst_4 _inst_2 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)))) _inst_5 _inst_3 (Pi.module.{u1, u4, u4} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomCompTriple.ids.{u4, u4} R R _inst_1 _inst_1 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) (LinearEquiv.symm.{u4, u4, u3, u2} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R _inst_1)) (RingHomInvPair.ids.{u4} R _inst_1) (RingHomInvPair.ids.{u4} R _inst_1) f) (Basis.equivFun.{u1, u4, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b))
+Case conversion may be inaccurate. Consider using '#align basis.map_equiv_fun Basis.map_equivFunₓ'. -/
 @[simp]
 theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
   rfl
 #align basis.map_equiv_fun Basis.map_equivFun
 
+/- warning: basis.sum_equiv_fun -> Basis.sum_equivFun is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (ι -> R) (AddMonoid.toZero.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u1} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (ι -> R) (LinearEquiv.{u1, u1, u3, max u2 u1} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.equivFun.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) u i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+Case conversion may be inaccurate. Consider using '#align basis.sum_equiv_fun Basis.sum_equivFunₓ'. -/
 theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u :=
   by
   conv_rhs => rw [← b.total_repr u]
   simp [Finsupp.total_apply, Finsupp.sum_fintype, b.equiv_fun_apply]
 #align basis.sum_equiv_fun Basis.sum_equivFun
 
+/- warning: basis.sum_repr -> Basis.sum_repr is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))) u
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u1, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) (u : M), Eq.{succ u3} M (Finset.sum.{u3, u2} M ι _inst_2 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u1, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u1, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (SMulZeroClass.toSMul.{u1, u3} R M (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribSMul.toSMulZeroClass.{u1, u3} R M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2)) (DistribMulAction.toDistribSMul.{u1, u3} R M (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toZero.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddMonoid.toAddZeroClass.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u1, u3, max u2 u1} (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u3} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u1} (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, u3} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u1, max u2 u1} R (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u1, u3, max u2 u1, max (max u2 u1) u3} R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u3, max u2 u1, max (max u2 u1) u3} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) (LinearEquiv.{u1, u1, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u3, max u2 u1} R R M (Finsupp.{u2, u1} ι R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u2, u1} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u2, u1, u1} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))) (Semiring.toModule.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R _inst_1)))))) (Basis.repr.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3 b) u) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M _inst_1 _inst_2 _inst_3) b i))) u
+Case conversion may be inaccurate. Consider using '#align basis.sum_repr Basis.sum_reprₓ'. -/
 theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
   b.sum_equivFun u
 #align basis.sum_repr Basis.sum_repr
 
+/- warning: basis.equiv_fun_self -> Basis.equivFun_self is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u1} ι] (i : ι) (j : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i) j) (ite.{succ u2} R (Eq.{succ u1} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) [_inst_7 : DecidableEq.{succ u3} ι] (i : ι) (j : ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (ι -> R) (LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i) j) (ite.{succ u2} R (Eq.{succ u3} ι i j) (_inst_7 i j) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align basis.equiv_fun_self Basis.equivFun_selfₓ'. -/
 @[simp]
 theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
     b.equivFun (b i) j = if i = j then 1 else 0 := by rw [b.equiv_fun_apply, b.repr_self_apply]
 #align basis.equiv_fun_self Basis.equivFun_self
 
+/- warning: basis.repr_sum_self -> Basis.repr_sum_self is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u1) (succ u2)} (ι -> R) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) b i))))) c
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (c : ι -> R), Eq.{max (succ u3) (succ u2)} (forall (ᾰ : ι), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) ᾰ) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (Basis.repr.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 b) (Finset.sum.{u1, u3} M ι _inst_2 (Finset.univ.{u3} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommMonoid.toAddMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_2)) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) b i))))) c
+Case conversion may be inaccurate. Consider using '#align basis.repr_sum_self Basis.repr_sum_selfₓ'. -/
 theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) = c :=
   by
   ext j
@@ -980,18 +1554,32 @@ theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) =
     contradiction
 #align basis.repr_sum_self Basis.repr_sum_self
 
+#print Basis.ofEquivFun /-
 /-- Define a basis by mapping each vector `x : M` to its coordinates `e x : ι → R`,
 as long as `ι` is finite. -/
 def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
   Basis.of_repr <| e.trans <| LinearEquiv.symm <| Finsupp.linearEquivFunOnFinite R R ι
 #align basis.of_equiv_fun Basis.ofEquivFun
+-/
 
+/- warning: basis.of_equiv_fun_repr_apply -> Basis.ofEquivFun_repr_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (x : M) (i : ι), Eq.{succ u2} R (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.repr.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) e x i)
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (e : LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.repr.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 (Basis.ofEquivFun.{u1, u3, u2} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) x) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (ι -> R) (AddMonoid.toZero.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u1 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (ι -> R) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u2} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (ι -> R) (LinearEquiv.{u3, u3, u2, max u1 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11846 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) e x i)
+Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_applyₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
     (Basis.ofEquivFun e).repr x i = e x i :=
   rfl
 #align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_apply
 
+/- warning: basis.coe_of_equiv_fun -> Basis.coe_ofEquivFun is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] [_inst_7 : DecidableEq.{succ u1} ι] (e : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u1) (succ u3)} ((fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (fun (_x : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3)) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u1, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u1 u2} (ι -> R) 0 (OfNat.mk.{max u1 u2} (ι -> R) 0 (Zero.zero.{max u1 u2} (ι -> R) (Pi.instZero.{u1, u2} ι (fun (a : ι) => R) (fun (i : ι) => MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))) i (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} R (NonAssocSemiring.toAddCommMonoidWithOne.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] [_inst_7 : DecidableEq.{succ u3} ι] (e : LinearEquiv.{u2, u2, u1, max u3 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))), Eq.{max (succ u3) (succ u1)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 e)) (fun (i : ι) => FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u3) (succ u2), succ u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u2, max u3 u2} R (ι -> R) (AddMonoid.toZero.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (ι -> R) (AddMonoid.toAddZeroClass.{max u3 u2} (ι -> R) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (ι -> R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)))))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, max u3 u2, u1} (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u3 u2} (ι -> R) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u2, max u3 u2} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1))) (Module.toDistribMulAction.{u2, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u2, u1, max (max u3 u2) u1} R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u2, u1, max (max u3 u2) u1} R R (ι -> R) M (LinearEquiv.{u2, u2, max u3 u2, u1} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u2, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)))))) (LinearEquiv.symm.{u2, u2, u1, max u3 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.11916 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) e) (Function.update.{succ u3, succ u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_7 a b) (OfNat.ofNat.{max u3 u2} (ι -> R) 0 (Zero.toOfNat0.{max u3 u2} (ι -> R) (Pi.instZero.{u3, u2} ι (fun (a : ι) => R) (fun (i : ι) => MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1))))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align basis.coe_of_equiv_fun Basis.coe_ofEquivFunₓ'. -/
 @[simp]
 theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
     (Basis.ofEquivFun e : ι → M) = fun i => e.symm (Function.update 0 i 1) :=
@@ -1001,6 +1589,12 @@ theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
         simp [Basis.ofEquivFun, ← Finsupp.single_eq_pi_single, Finsupp.single_eq_update]
 #align basis.coe_of_equiv_fun Basis.coe_ofEquivFun
 
+/- warning: basis.of_equiv_fun_equiv_fun -> Basis.ofEquivFun_equivFun is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (v : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (succ u1) (succ u2) (succ u3)} (Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 v)) v
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u2, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u3} ι] (v : Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3) (Basis.ofEquivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 (Basis.equivFun.{u3, u2, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 v)) v
+Case conversion may be inaccurate. Consider using '#align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFunₓ'. -/
 @[simp]
 theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivFun = v := by
   classical
@@ -1014,12 +1608,24 @@ variable (S : Type _) [Semiring S] [Module S M']
 
 variable [SMulCommClass R S M']
 
+/- warning: basis.constr_apply_fintype -> Basis.constr_apply_fintype is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {M' : Type.{u4}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u4} M'] [_inst_5 : Module.{u2, u4} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u5}) [_inst_7 : Semiring.{u5} S] [_inst_8 : Module.{u5, u4} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u2, u5, u4} R S M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toHasSmul.{u5, u4} S M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u4} S M' (MulZeroClass.toHasZero.{u5} S (MulZeroOneClass.toMulZeroClass.{u5} S (MonoidWithZero.toMulZeroOneClass.{u5} S (Semiring.toMonoidWithZero.{u5} S _inst_7)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u4} S M' (Semiring.toMonoidWithZero.{u5} S _inst_7) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u5, u4} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u4} M' (coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearMap.hasCoeToFun.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (coeFn.{max (succ (max u1 u4)) (succ (max u3 u4)), max (succ (max u1 u4)) (succ (max u3 u4))} (LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) (fun (_x : LinearEquiv.{u5, u5, max u1 u4, max u3 u4} S S _inst_7 _inst_7 (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7) (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9)) => (ι -> M') -> (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5)) (LinearEquiv.hasCoeToFun.{u5, u5, max u1 u4, max u3 u4} S S (ι -> M') (LinearMap.{u2, u2, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u1, u4} ι (fun (ᾰ : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u2, u2, u3, u4} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Pi.Function.module.{u1, u5, u4} ι S M' _inst_7 _inst_4 _inst_8) (LinearMap.module.{u2, u2, u5, u3, u4} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHom.id.{u5} S (Semiring.toNonAssocSemiring.{u5} S _inst_7)) (RingHomInvPair.ids.{u5} S _inst_7) (RingHomInvPair.ids.{u5} S _inst_7)) (Basis.constr.{u1, u2, u3, u4, u5} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u4, u1} M' ι _inst_4 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u4} R M' (SMulZeroClass.toHasSmul.{u2, u4} R M' (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (SMulWithZero.toSmulZeroClass.{u2, u4} R M' (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (MulActionWithZero.toSMulWithZero.{u2, u4} R M' (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u4} M' (AddMonoid.toAddZeroClass.{u4} M' (AddCommMonoid.toAddMonoid.{u4} M' _inst_4))) (Module.toMulActionWithZero.{u2, u4} R M' _inst_1 _inst_4 _inst_5)))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1))) => M -> ι -> R) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M _inst_1 _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' _inst_1 _inst_4] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3) (S : Type.{u1}) [_inst_7 : Semiring.{u1} S] [_inst_8 : Module.{u1, u5} S M' _inst_7 _inst_4] [_inst_9 : SMulCommClass.{u3, u1, u5} R S M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u1, u5} S M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u1, u5} S M' (MonoidWithZero.toZero.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u1, u5} S M' (Semiring.toMonoidWithZero.{u1} S _inst_7) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u1, u5} S M' _inst_7 _inst_4 _inst_8))))] (f : ι -> M') (x : M), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') x) (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) f) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (ι -> M') (fun (_x : ι -> M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> M') => LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _x) (SMulHomClass.toFunLike.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (SMulZeroClass.toSMul.{u1, max u2 u5} S (ι -> M') (AddMonoid.toZero.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribSMul.toSMulZeroClass.{u1, max u2 u5} S (ι -> M') (AddMonoid.toAddZeroClass.{max u2 u5} (ι -> M') (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)))) (DistribMulAction.toDistribSMul.{u1, max u2 u5} S (ι -> M') (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)))))) (SMulZeroClass.toSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toZero.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribSMul.toSMulZeroClass.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (DistribMulAction.toDistribSMul.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u4) u5, u1, max u2 u5, max u4 u5} (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S _inst_7)) (AddCommMonoid.toAddMonoid.{max u2 u5} (ι -> M') (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4))) (AddCommMonoid.toAddMonoid.{max u4 u5} (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u1, max u2 u5} S (ι -> M') _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8))) (Module.toDistribMulAction.{u1, max u4 u5} S (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u5, max u4 u5, max (max u2 u4) u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (LinearEquiv.{u1, u1, max u2 u5, max u5 u4} S S _inst_7 _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9)) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u5, max u4 u5} S S (ι -> M') (LinearMap.{u3, u3, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) _inst_7 _inst_7 (Pi.addCommMonoid.{u2, u5} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') (fun (i : ι) => _inst_4)) (LinearMap.addCommMonoid.{u3, u3, u4, u5} R R M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Pi.module.{u2, u5, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.7640 : ι) => M') S _inst_7 (fun (i : ι) => _inst_4) (fun (i : ι) => _inst_8)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u1, u4, u5} R R S M M' _inst_1 _inst_1 _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) _inst_7 _inst_8 _inst_9) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_7)) (RingHomInvPair.ids.{u1} S _inst_7) (RingHomInvPair.ids.{u1} S _inst_7)))))) (Basis.constr.{u2, u3, u4, u5, u1} ι R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b S _inst_7 _inst_8 _inst_9) f) x) (Finset.sum.{u5, u2} M' ι _inst_4 (Finset.univ.{u2} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u5, u5} R M' M' (instHSMul.{u3, u5} R M' (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (SMulWithZero.toSMulZeroClass.{u3, u5} R M' (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (MulActionWithZero.toSMulWithZero.{u3, u5} R M' (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (Module.toMulActionWithZero.{u3, u5} R M' _inst_1 _inst_4 _inst_5))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), succ u4, max (succ u2) (succ u3)} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => ι -> R) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (SMulZeroClass.toSMul.{u3, u4} R M (AddMonoid.toZero.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u4} R M (AddMonoid.toAddZeroClass.{u4} M (AddCommMonoid.toAddMonoid.{u4} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u4} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u4, u3, u4, max u2 u3} (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) R M (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u4} M _inst_2) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, u4} R M _inst_1 _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (SemilinearMapClass.distribMulActionHomClass.{u3, u4, max u2 u3, max (max u2 u3) u4} R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u4, max u2 u3, max (max u2 u3) u4} R R M (ι -> R) (LinearEquiv.{u3, u3, u4, max u2 u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) M (ι -> R) _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u4, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (Basis.equivFun.{u2, u3, u4} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b) x i) (f i)))
+Case conversion may be inaccurate. Consider using '#align basis.constr_apply_fintype Basis.constr_apply_fintypeₓ'. -/
 @[simp]
 theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
     (b.constr S f : M → M') x = ∑ i, b.equivFun x i • f i := by
   simp [b.constr_apply, b.equiv_fun_apply, Finsupp.sum_fintype]
 #align basis.constr_apply_fintype Basis.constr_apply_fintype
 
+/- warning: basis.mem_submodule_iff' -> Basis.mem_submodule_iff' is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u2)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u3} M x (Finset.sum.{u3, u1} M ι _inst_2 (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} R M _inst_1 _inst_2 _inst_3)))) (c i) ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) x P))))) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) (fun (_x : Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) => ι -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P)) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (_x : ι) => coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) (Basis.funLike.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M _inst_1 _inst_2 _inst_3) M (Submodule.setLike.{u2, u3} R M _inst_1 _inst_2 _inst_3)) P) _inst_1 (Submodule.addCommMonoid.{u2, u3} R M _inst_1 _inst_2 _inst_3 P) (Submodule.module.{u2, u3} R M _inst_1 _inst_2 _inst_3 P))) b i))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] {P : Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3} (b : Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) {x : M}, Iff (Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P) (Exists.{max (succ u1) (succ u3)} (ι -> R) (fun (c : ι -> R) => Eq.{succ u2} M x (Subtype.val.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) x (SetLike.coe.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) P)) (Finset.sum.{u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) ι (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Finset.univ.{u1} ι _inst_6) (fun (i : ι) => HSMul.hSMul.{u3, u2, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (instHSMul.{u3, u2} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) i) (Submodule.instSMulSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u3, u2} R R M _inst_1 _inst_2 _inst_3 P (SMulZeroClass.toSMul.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (SMulWithZero.toSMulZeroClass.{u3, u3} R R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulZeroClass.toSMulWithZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3)))) (IsScalarTower.left.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R _inst_1) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (Module.toMulActionWithZero.{u3, u2} R M _inst_1 _inst_2 _inst_3))))) (c i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) a) (Basis.funLike.{u1, u3, u2} ι R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) (SetLike.instMembership.{u2, u2} (Submodule.{u3, u2} R M _inst_1 _inst_2 _inst_3) M (Submodule.instSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3)) x P)) _inst_1 (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u3, u2} R M _inst_1 _inst_2 _inst_3 P)) b i))))))
+Case conversion may be inaccurate. Consider using '#align basis.mem_submodule_iff' Basis.mem_submodule_iff'ₓ'. -/
 /-- If the submodule `P` has a finite basis,
 `x ∈ P` iff it is a linear combination of basis vectors. -/
 theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M} :
@@ -1029,6 +1635,12 @@ theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M}
       exists_congr fun c => by simp [Finsupp.sum_fintype]
 #align basis.mem_submodule_iff' Basis.mem_submodule_iff'
 
+/- warning: basis.coord_equiv_fun_symm -> Basis.coord_equivFun_symm is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u1} ι] (b : Basis.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) (fun (_x : LinearMap.{u2, u2, u3, u2} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1)) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) _inst_3 (Semiring.toModule.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Basis.coord.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 b i) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) (fun (_x : LinearEquiv.{u2, u2, max u1 u2, u3} R R _inst_1 _inst_1 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3) => (ι -> R) -> M) (LinearEquiv.hasCoeToFun.{u2, u2, max u1 u2, u3} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_2 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1)) (LinearEquiv.symm.{u2, u2, u3, max u1 u2} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)))) _inst_3 (Pi.Function.module.{u1, u2, u2} ι R R _inst_1 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Semiring.toModule.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R _inst_1) (RingHomInvPair.ids.{u2} R _inst_1) (Basis.equivFun.{u1, u2, u3} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Semiring.{u3} R] [_inst_2 : AddCommMonoid.{u1} M] [_inst_3 : Module.{u3, u1} R M _inst_1 _inst_2] [_inst_6 : Fintype.{u2} ι] (b : Basis.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3) (i : ι) (f : ι -> R), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (a : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) a) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (FunLike.coe.{max (succ u3) (succ u1), succ u1, succ u3} (LinearMap.{u3, u3, u1, u3} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) M R _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1)) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u1, u3} R R M R _inst_1 _inst_1 _inst_2 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) _inst_3 (Semiring.toModule.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (Basis.coord.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 b i) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : ι -> R) => M) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (SMulZeroClass.toSMul.{u3, max u2 u3} R (ι -> R) (AddMonoid.toZero.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribSMul.toSMulZeroClass.{u3, max u2 u3} R (ι -> R) (AddMonoid.toAddZeroClass.{max u2 u3} (ι -> R) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))))) (DistribMulAction.toDistribSMul.{u3, max u2 u3} R (ι -> R) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)))))) (SMulZeroClass.toSMul.{u3, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u1} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u3, max u2 u3, u1} (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) R (ι -> R) M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R _inst_1)) (AddCommMonoid.toAddMonoid.{max u2 u3} (ι -> R) (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))))) (AddCommMonoid.toAddMonoid.{u1} M _inst_2) (Module.toDistribMulAction.{u3, max u2 u3} R (ι -> R) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1))) (Module.toDistribMulAction.{u3, u1} R M _inst_1 _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, max u2 u3, u1, max (max u2 u3) u1} R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, max u2 u3, u1, max (max u2 u3) u1} R R (ι -> R) M (LinearEquiv.{u3, u3, max u2 u3, u1} R R _inst_1 _inst_1 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (ι -> R) M (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3) _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, max u2 u3, u1} R R (ι -> R) M _inst_1 _inst_1 (Pi.addCommMonoid.{u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_2 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1)))))) (LinearEquiv.symm.{u3, u3, u1, max u2 u3} R R M (ι -> R) _inst_1 _inst_1 _inst_2 (Pi.addCommMonoid.{u2, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)))) _inst_3 (Pi.module.{u2, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.10966 : ι) => R) R _inst_1 (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1))) (fun (i : ι) => Semiring.toModule.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R _inst_1) (RingHomInvPair.ids.{u3} R _inst_1) (Basis.equivFun.{u2, u3, u1} ι R M _inst_1 _inst_2 _inst_3 _inst_6 b)) f)) (f i)
+Case conversion may be inaccurate. Consider using '#align basis.coord_equiv_fun_symm Basis.coord_equivFun_symmₓ'. -/
 theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.Coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
 #align basis.coord_equiv_fun_symm Basis.coord_equivFun_symm
@@ -1047,6 +1659,7 @@ variable [AddCommMonoid M] [Module R M] [AddCommMonoid M'] [Module R M']
 
 variable (b : Basis ι R M) (b' : Basis ι' R M')
 
+#print Basis.equiv' /-
 /-- If `b` is a basis for `M` and `b'` a basis for `M'`,
 and `f`, `g` form a bijection between the basis vectors,
 `b.equiv' b' f g hf hg hgf hfg` is a linear equivalence `M ≃ₗ[R] M'`, mapping `b i` to `f (b i)`.
@@ -1070,19 +1683,38 @@ def equiv' (f : M → M') (g : M' → M) (hf : ∀ i, f (b i) ∈ range b') (hg
               Function.comp_apply, hi', hfg, LinearMap.id_apply]
       fun x => congr_arg (fun h : M' →ₗ[R] M' => h x) this }
 #align basis.equiv' Basis.equiv'
+-/
 
+/- warning: basis.equiv'_apply -> Basis.equiv'_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.Mem.{u5, u5} M' (Set.{u5} M') (Set.hasMem.{u5} M') (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (Set.range.{u5, succ u2} M' ι' (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b'))) (hg : forall (i : ι'), Membership.Mem.{u4, u4} M (Set.{u4} M) (Set.hasMem.{u4} M) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b))) (hgf : forall (i : ι), Eq.{succ u4} M (g (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (i : ι), Eq.{succ u5} M' (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (LinearEquiv.{u3, u3, u4, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u4, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) M M' _inst_2 _inst_4 _inst_3 _inst_5) => M -> M') (LinearEquiv.hasCoeToFun.{u3, u3, u4, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1)) (Basis.equiv'.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))
+but is expected to have type
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι), Eq.{succ u5} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (FunLike.coe.{max (succ u2) (succ u5), succ u2, succ u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M') _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u2, u5} (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) R M M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, u5, max u2 u5} R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, u5, max u2 u5} R R M M' (LinearEquiv.{u3, u3, u2, u5} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M M' _inst_2 _inst_4 _inst_3 _inst_5) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))
+Case conversion may be inaccurate. Consider using '#align basis.equiv'_apply Basis.equiv'_applyₓ'. -/
 @[simp]
 theorem equiv'_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι) :
     b.equiv' b' f g hf hg hgf hfg (b i) = f (b i) :=
   b.constr_basis R _ _
 #align basis.equiv'_apply Basis.equiv'_apply
 
+/- warning: basis.equiv'_symm_apply -> Basis.equiv'_symm_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {ι' : Type.{u2}} {R : Type.{u3}} {M : Type.{u4}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u4} M] [_inst_3 : Module.{u3, u4} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.Mem.{u5, u5} M' (Set.{u5} M') (Set.hasMem.{u5} M') (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (Set.range.{u5, succ u2} M' ι' (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b'))) (hg : forall (i : ι'), Membership.Mem.{u4, u4} M (Set.{u4} M) (Set.hasMem.{u4} M) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (Set.range.{u4, succ u1} M ι (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b))) (hgf : forall (i : ι), Eq.{succ u4} M (g (f (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i))) (coeFn.{max (succ u1) (succ u3) (succ u4), max (succ u1) (succ u4)} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u3) (succ u4), succ u1, succ u4} (Basis.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u3, u4} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (i : ι'), Eq.{succ u4} M (coeFn.{max (succ u5) (succ u4), max (succ u5) (succ u4)} (LinearEquiv.{u3, u3, u5, u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) (fun (_x : LinearEquiv.{u3, u3, u5, u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1) M' M _inst_4 _inst_2 _inst_5 _inst_3) => M' -> M) (LinearEquiv.hasCoeToFun.{u3, u3, u5, u4} R R M' M (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'._proof_1.{u3} R _inst_1)) (LinearEquiv.symm.{u3, u3, u4, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (Basis.equiv'._proof_1.{u3} R _inst_1) (Basis.equiv'._proof_2.{u3} R _inst_1) (Basis.equiv'.{u1, u2, u3, u4, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i)) (g (coeFn.{max (succ u2) (succ u3) (succ u5), max (succ u2) (succ u5)} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (fun (_x : Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) => ι' -> M') (FunLike.hasCoeToFun.{max (succ u2) (succ u3) (succ u5), succ u2, succ u5} (Basis.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => M') (Basis.funLike.{u2, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)) b' i))
+but is expected to have type
+  forall {ι : Type.{u4}} {ι' : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {M' : Type.{u5}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] [_inst_4 : AddCommMonoid.{u5} M'] [_inst_5 : Module.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (b' : Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (f : M -> M') (g : M' -> M) (hf : forall (i : ι), Membership.mem.{u5, u5} M' (Set.{u5} M') (Set.instMembershipSet.{u5} M') (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (Set.range.{u5, succ u1} M' ι' (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b'))) (hg : forall (i : ι'), Membership.mem.{u2, u2} M (Set.{u2} M) (Set.instMembershipSet.{u2} M) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (Set.range.{u2, succ u4} M ι (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b))) (hgf : forall (i : ι), Eq.{succ u2} M (g (f (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i))) (FunLike.coe.{max (max (succ u4) (succ u3)) (succ u2), succ u4, succ u2} (Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b i)) (hfg : forall (i : ι'), Eq.{succ u5} M' (f (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (i : ι'), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => M) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (a : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') a) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (FunLike.coe.{max (succ u2) (succ u5), succ u5, succ u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) M' (fun (_x : M') => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M') => M) _x) (SMulHomClass.toFunLike.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u5} R M' (AddMonoid.toZero.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribSMul.toSMulZeroClass.{u3, u5} R M' (AddMonoid.toAddZeroClass.{u5} M' (AddCommMonoid.toAddMonoid.{u5} M' _inst_4)) (DistribMulAction.toDistribSMul.{u3, u5} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u5, u3, u5, u2} (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u5} M' _inst_4) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u5} R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u5, u2, max u2 u5} R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u5, u2, max u2 u5} R R M' M (LinearEquiv.{u3, u3, u5, u2} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M' M _inst_4 _inst_2 _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u5, u2} R R M' M (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_2 _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (LinearEquiv.symm.{u3, u3, u2, u5} R R M M' (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_4 _inst_3 _inst_5 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (Basis.equiv'.{u4, u1, u3, u2, u5} ι ι' R M M' _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 b b' f g hf hg hgf hfg)) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i)) (g (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u5), succ u1, succ u5} (Basis.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M') _x) (Basis.funLike.{u1, u3, u5} ι' R M' (CommSemiring.toSemiring.{u3} R _inst_1) _inst_4 _inst_5) b' i))
+Case conversion may be inaccurate. Consider using '#align basis.equiv'_symm_apply Basis.equiv'_symm_applyₓ'. -/
 @[simp]
 theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι') :
     (b.equiv' b' f g hf hg hgf hfg).symm (b' i) = g (b' i) :=
   b'.constr_basis R _ _
 #align basis.equiv'_symm_apply Basis.equiv'_symm_apply
 
+/- warning: basis.sum_repr_mul_repr -> Basis.sum_repr_mul_repr is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : CommSemiring.{u2} R] [_inst_2 : AddCommMonoid.{u3} M] [_inst_3 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2] (b : Basis.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u2} R (Finset.sum.{u2, u4} R ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (Distrib.toHasMul.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) (coeFn.{max (succ u4) (succ u2) (succ u3), max (succ u4) (succ u3)} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) (fun (_x : Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) => ι' -> M) (FunLike.hasCoeToFun.{max (succ u4) (succ u2) (succ u3), succ u4, succ u3} (Basis.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => M) (Basis.funLike.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3)) b' j)) i) (coeFn.{max (succ u4) (succ u2), max (succ u4) (succ u2)} (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι' -> R) (Finsupp.hasCoeToFun.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u4 u2)), max (succ u3) (succ (max u4 u2))} (LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u4 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u4 u2} R R M (Finsupp.{u4, u2} ι' R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u2} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u4, u2, u2} ι' R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u4, u2, u3} ι' R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b') x) j))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (fun (_x : Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) => ι -> R) (Finsupp.hasCoeToFun.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))))) (CommSemiring.toSemiring.{u2} R _inst_1) (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))))) _inst_3 (Finsupp.module.{u1, u2, u2} ι R R (CommSemiring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (CommSemiring.toSemiring.{u2} R _inst_1) _inst_2 _inst_3 b) x) i)
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : CommSemiring.{u3} R] [_inst_2 : AddCommMonoid.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2] (b : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) {ι' : Type.{u4}} [_inst_6 : Fintype.{u4} ι'] (b' : Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (x : M) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Finset.sum.{u3, u4} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ι' (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1)))) (Finset.univ.{u4} ι' _inst_6) (fun (j : ι') => HMul.hMul.{u3, u3, u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) j) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (instHMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonUnitalNonAssocSemiring.toMul.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) i) _inst_1))))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u4, succ u2} (Basis.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) ι' (fun (_x : ι') => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι') => M) _x) (Basis.funLike.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) b' j)) i) (FunLike.coe.{max (succ u4) (succ u3), succ u4, succ u3} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι') => R) _x) (Finsupp.funLike.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u2, max (succ u3) (succ u4)} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u3, u2, max u3 u4} (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u3 u4} (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u3 u4} R (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u3 u4, max (max u3 u2) u4} R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u3 u4, max (max u3 u2) u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u4} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u3 u4} R R M (Finsupp.{u4, u3} ι' R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u4, u3} ι' R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u4, u3, u3} ι' R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u4, u3, u2} ι' R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b') x) j))) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R) _x) (Finsupp.funLike.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u2, max (succ u1) (succ u3)} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M _inst_2)) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3)))) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toZero.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u3, u2, max u1 u3} (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (AddCommMonoid.toAddMonoid.{u2} M _inst_2) (AddCommMonoid.toAddMonoid.{max u1 u3} (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))))) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3) (Module.toDistribMulAction.{u3, max u1 u3} R (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u3, u2, max u1 u3, max (max u1 u3) u2} R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u2, max u1 u3, max (max u1 u3) u2} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (LinearEquiv.{u3, u3, u2, max u3 u1} R R (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u3, u3, u2, max u1 u3} R R M (Finsupp.{u1, u3} ι R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (CommSemiring.toSemiring.{u3} R _inst_1) (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 (Finsupp.addCommMonoid.{u1, u3} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))) _inst_3 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u1, u3, u3} ι R R (CommSemiring.toSemiring.{u3} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1)) (RingHomInvPair.ids.{u3} R (CommSemiring.toSemiring.{u3} R _inst_1))))))) (Basis.repr.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R _inst_1) _inst_2 _inst_3 b) x) i)
+Case conversion may be inaccurate. Consider using '#align basis.sum_repr_mul_repr Basis.sum_repr_mul_reprₓ'. -/
 theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i : ι) :
     (∑ j : ι', b.repr (b' j) i * b'.repr x j) = b.repr x i :=
   by
@@ -1112,6 +1744,12 @@ variable (b : Basis ι R M)
 
 namespace Basis
 
+/- warning: basis.maximal -> Basis.maximal is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] [_inst_10 : Nontrivial.{u2} R] (b : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6), LinearIndependent.Maximal.{u2, u3, u1} ι R (Ring.toSemiring.{u2} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) b) (Basis.linearIndependent.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 b)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u3}} {M : Type.{u1}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u3, u1} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] [_inst_10 : Nontrivial.{u3} R] (b : Basis.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6), LinearIndependent.Maximal.{u3, u1, u2} ι R (Ring.toSemiring.{u3} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), succ u2, succ u1} (Basis.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u3, u1} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) b) (Basis.linearIndependent.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 b)
+Case conversion may be inaccurate. Consider using '#align basis.maximal Basis.maximalₓ'. -/
 /-- Any basis is a maximal linear independent set.
 -/
 theorem maximal [Nontrivial R] (b : Basis ι R M) : b.LinearIndependent.Maximal := fun w hi h =>
@@ -1147,6 +1785,12 @@ section Mk
 
 variable (hli : LinearIndependent R v) (hsp : ⊤ ≤ span R (range v))
 
+/- warning: basis.mk -> Basis.mk is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
+Case conversion may be inaccurate. Consider using '#align basis.mk Basis.mkₓ'. -/
 /-- A linear independent family of vectors spanning the whole module is a basis. -/
 protected noncomputable def mk : Basis ι R M :=
   Basis.of_repr
@@ -1159,15 +1803,33 @@ protected noncomputable def mk : Basis ι R M :=
       right_inv := fun x => hli.repr_eq rfl }
 #align basis.mk Basis.mk
 
+/- warning: basis.mk_repr -> Basis.mk_repr is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {x : M} (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => M -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R R M (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Basis.repr.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (_x : LinearMap.{u2, u2, u3, max u1 u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) => (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) -> (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (LinearMap.hasCoeToFun.{u2, u2, u3, max u1 u2} R R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.{u1, u2} ι R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.addCommMonoid.{u1, u2} ι R (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Finsupp.module.{u1, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toAddCommGroup.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) x (hsp x (Submodule.mem_top.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 x))))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {x : M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Module.toDistribMulAction.{u2, max u3 u2} R (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearEquiv.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R R M (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) _inst_6 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (Basis.repr.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) x) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearMap.{u2, u2, u1, max u2 u3} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) => Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max u3 u2} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v)))) (Finsupp.{u3, u2} ι R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.addCommMonoid.{u3, u2} ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1))))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R R (Ring.toSemiring.{u2} R _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonUnitalRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonUnitalRing.{u2} R _inst_1)))) (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (LinearIndependent.repr.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))) x (hsp x (Submodule.mem_top.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 x))))
+Case conversion may be inaccurate. Consider using '#align basis.mk_repr Basis.mk_reprₓ'. -/
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
   rfl
 #align basis.mk_repr Basis.mk_repr
 
+/- warning: basis.mk_apply -> Basis.mk_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)
+but is expected to have type
+  forall {ι : Type.{u2}} {R : Type.{u1}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u2, u1, u3} ι R M v (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (Top.top.{u3} (Submodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u1, u3} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u2} M ι v))) (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u2, succ u3} (Basis.{u2, u1, u3} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u2, u1, u3} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Basis.mk.{u2, u1, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)
+Case conversion may be inaccurate. Consider using '#align basis.mk_apply Basis.mk_applyₓ'. -/
 theorem mk_apply (i : ι) : Basis.mk hli hsp i = v i :=
   show Finsupp.total _ _ _ v _ = v i by simp
 #align basis.mk_apply Basis.mk_apply
 
+/- warning: basis.coe_mk -> Basis.coe_mk is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))), Eq.{max (succ u1) (succ u3)} (ι -> M) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) v
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u1}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] (hli : LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (hsp : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u3} M ι v))), Eq.{max (succ u3) (succ u2)} (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.mk.{u3, u1, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp)) v
+Case conversion may be inaccurate. Consider using '#align basis.coe_mk Basis.coe_mkₓ'. -/
 @[simp]
 theorem coe_mk : ⇑(Basis.mk hli hsp) = v :=
   funext (mk_apply _ _)
@@ -1175,12 +1837,24 @@ theorem coe_mk : ⇑(Basis.mk hli hsp) = v :=
 
 variable {hli hsp}
 
+/- warning: basis.mk_coord_apply_eq -> Basis.mk_coord_apply_eq is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} (i : ι), Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} {v : ι -> M} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {hli : LinearIndependent.{u1, u3, u2} ι R M v (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {hsp : LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v))} (i : ι), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v i)) (FunLike.coe.{max (succ u3) (succ u2), succ u2, succ u3} (LinearMap.{u3, u3, u2, u3} R R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u3} R R M R (Ring.toSemiring.{u3} R _inst_1) (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) _inst_6 (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R _inst_1)))) (Basis.coord.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Basis.mk.{u1, u3, u2} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v i)) (OfNat.ofNat.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v i)) 1 (One.toOfNat1.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v i)) (NonAssocRing.toOne.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v i)) (Ring.toNonAssocRing.{u3} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v i)) _inst_1))))
+Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_eq Basis.mk_coord_apply_eqₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 1 on the `i`th element of the
 basis. -/
 theorem mk_coord_apply_eq (i : ι) : (Basis.mk hli hsp).Coord i (v i) = 1 :=
   show hli.repr ⟨v i, Submodule.subset_span (mem_range_self i)⟩ i = 1 by simp [hli.repr_eq_single i]
 #align basis.mk_coord_apply_eq Basis.mk_coord_apply_eq
 
+/- warning: basis.mk_coord_apply_ne -> Basis.mk_coord_apply_ne is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} {i : ι} {j : ι}, (Ne.{succ u1} ι j i) -> (Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} {i : ι} {j : ι}, (Ne.{succ u3} ι j i) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) _inst_1))))))
+Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply_ne Basis.mk_coord_apply_neₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to 0 on the `j`th element of the
 basis if `j ≠ i`. -/
 theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i (v j) = 0 :=
@@ -1188,6 +1862,12 @@ theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).Coord i
     simp [hli.repr_eq_single j, h]
 #align basis.mk_coord_apply_ne Basis.mk_coord_apply_ne
 
+/- warning: basis.mk_coord_apply -> Basis.mk_coord_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {hli : LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {hsp : LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))} [_inst_10 : DecidableEq.{succ u1} ι] {i : ι} {j : ι}, Eq.{succ u2} R (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (fun (_x : LinearMap.{u2, u2, u3, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) => M -> R) (LinearMap.hasCoeToFun.{u2, u2, u3, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Basis.mk.{u1, u2, u3} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} R (Eq.{succ u1} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} R 1 (OfNat.mk.{u2} R 1 (One.one.{u2} R (AddMonoidWithOne.toOne.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))))) (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Set.range.{u1, succ u3} M ι v))} [_inst_10 : DecidableEq.{succ u3} ι] {i : ι} {j : ι}, Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearMap.{u2, u2, u1, u2} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u2} R R M R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) _inst_6 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 (Basis.mk.{u3, u2, u1} ι R M v _inst_1 _inst_3 _inst_6 hli hsp) i) (v j)) (ite.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Eq.{succ u3} ι j i) (_inst_10 j i) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) _inst_1)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (MonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : M) => R) (v j)) _inst_1))))))
+Case conversion may be inaccurate. Consider using '#align basis.mk_coord_apply Basis.mk_coord_applyₓ'. -/
 /-- Given a basis, the `i`th element of the dual basis evaluates to the Kronecker delta on the
 `j`th element of the basis. -/
 theorem mk_coord_apply [DecidableEq ι] {i j : ι} :
@@ -1204,6 +1884,12 @@ section Span
 
 variable (hli : LinearIndependent R v)
 
+/- warning: basis.span -> Basis.span is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (Basis.{u1, u2, u3} ι R (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Ring.toSemiring.{u2} R _inst_1) (Submodule.addCommMonoid.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Submodule.module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} {v : ι -> M} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (LinearIndependent.{u1, u2, u3} ι R M v (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (Basis.{u1, u2, u3} ι R (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) x (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)))) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v))))
+Case conversion may be inaccurate. Consider using '#align basis.span Basis.spanₓ'. -/
 /-- A linear independent family of vectors is a basis for their span. -/
 protected noncomputable def span : Basis ι R (span R (range v)) :=
   Basis.mk (linearIndependent_span hli) <| by
@@ -1230,13 +1916,21 @@ protected noncomputable def span : Basis ι R (span R (range v)) :=
     rwa [h_x_eq_y]
 #align basis.span Basis.span
 
+#print Basis.span_apply /-
 protected theorem span_apply (i : ι) : (Basis.span hli i : M) = v i :=
   congr_arg (coe : span R (range v) → M) <| Basis.mk_apply (linearIndependent_span hli) _ i
 #align basis.span_apply Basis.span_apply
+-/
 
 end Span
 
-theorem group_smul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
+/- warning: basis.group_smul_span_eq_top -> Basis.groupSmul_span_eq_top is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] {v : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι v)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))) -> (forall {w : ι -> G}, Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 (Set.range.{u2, succ u1} M ι (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (ι -> M) (ι -> M) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15223 : ι) => G) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15209 : ι) => M) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))))) w v))) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))
+Case conversion may be inaccurate. Consider using '#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_topₓ'. -/
+theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
   by
@@ -1248,27 +1942,51 @@ theorem group_smul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Di
   obtain ⟨i, rfl⟩ := hu
   have : ((w i)⁻¹ • 1 : R) • w i • v i ∈ p := p.smul_mem ((w i)⁻¹ • 1 : R) (hp ⟨i, rfl⟩)
   rwa [smul_one_smul, inv_smul_smul] at this
-#align basis.group_smul_span_eq_top Basis.group_smul_span_eq_top
-
+#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_top
+
+/- warning: basis.group_smul -> Basis.groupSmul is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> G) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (Ring.toAddGroupWithOne.{u2} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toSMul.{u4, u2} G R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (Ring.toAddGroupWithOne.{u2} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (Ring.toAddGroupWithOne.{u2} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u3} G M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toSMul.{u4, u3} G M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> G) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
+Case conversion may be inaccurate. Consider using '#align basis.group_smul Basis.groupSmulₓ'. -/
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` are elements of a group,
 `group_smul` provides the basis corresponding to `w • v`. -/
 def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] (v : Basis ι R M) (w : ι → G) : Basis ι R M :=
   @Basis.mk ι R M (w • v) _ _ _ (v.LinearIndependent.group_smul w)
-    (group_smul_span_eq_top v.span_eq).ge
+    (groupSmul_span_eq_top v.span_eq).ge
 #align basis.group_smul Basis.groupSmul
 
+/- warning: basis.group_smul_apply -> Basis.groupSmul_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))] [_inst_12 : DistribMulAction.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u2} G R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))) (DistribSMul.toSmulZeroClass.{u4, u2} G R (AddMonoid.toAddZeroClass.{u2} R (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1))))) (DistribMulAction.toDistribSMul.{u4, u2} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u2} R (AddGroupWithOne.toAddMonoidWithOne.{u2} R (NonAssocRing.toAddGroupWithOne.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))) _inst_11))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u2, u3} G R M (SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12))) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.groupSmul.{u1, u2, u3, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (SMul.smul.{max u1 u4, max u1 u3} (ι -> G) (ι -> M) (Pi.smul'.{u1, u4, u3} ι (fun (ᾰ : ι) => G) (fun (ᾰ : ι) => M) (fun (i : ι) => SMulZeroClass.toHasSmul.{u4, u3} G M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))) (DistribSMul.toSmulZeroClass.{u4, u3} G M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))) _inst_12)))) w (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v) i)
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u3}} {M : Type.{u2}} [_inst_1 : Ring.{u3} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {G : Type.{u4}} [_inst_10 : Group.{u4} G] [_inst_11 : DistribMulAction.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))] [_inst_12 : DistribMulAction.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))] [_inst_13 : IsScalarTower.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u3} G R (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (DistribSMul.toSMulZeroClass.{u4, u3} G R (AddMonoid.toAddZeroClass.{u3} R (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1)))) (DistribMulAction.toDistribSMul.{u4, u3} G R (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (AddMonoidWithOne.toAddMonoid.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (Ring.toAddGroupWithOne.{u3} R _inst_1))) _inst_11))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12)))] [_inst_14 : SMulCommClass.{u4, u3, u2} G R M (SMulZeroClass.toSMul.{u4, u2} G M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G M (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))) _inst_12))) (SMulZeroClass.toSMul.{u3, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u3, u2} R M (MonoidWithZero.toZero.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))] {v : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {w : ι -> G} (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Basis.groupSmul.{u1, u3, u2, u4} ι R M _inst_1 _inst_3 _inst_6 G _inst_10 _inst_11 _inst_12 _inst_13 _inst_14 v w) i) (HSMul.hSMul.{max u1 u4, max u1 u2, max u1 u2} (ι -> G) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (forall (ᾰ : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) ᾰ) (instHSMul.{max u1 u4, max u1 u2} (ι -> G) (forall (a : ι), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (Pi.smul'.{u1, u4, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15643 : ι) => G) (fun (a : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) a) (fun (i : ι) => SMulZeroClass.toSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (DistribSMul.toSMulZeroClass.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddMonoid.toAddZeroClass.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u2} G ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (DivInvMonoid.toMonoid.{u4} G (Group.toDivInvMonoid.{u4} G _inst_10)) (SubNegMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddGroup.toSubNegMonoid.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toAddGroup.{u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))) _inst_12))))) w (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) v) i)
+Case conversion may be inaccurate. Consider using '#align basis.group_smul_apply Basis.groupSmul_applyₓ'. -/
 theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
     v.group_smul w i = (w • v : ι → M) i :=
-  mk_apply (v.LinearIndependent.group_smul w) (group_smul_span_eq_top v.span_eq).ge i
+  mk_apply (v.LinearIndependent.group_smul w) (groupSmul_span_eq_top v.span_eq).ge i
 #align basis.group_smul_apply Basis.groupSmul_apply
 
+/- warning: basis.units_smul_span_eq_top -> Basis.units_smul_span_eq_top is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (SMul.smul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (ᾰ : ι) => Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) (fun (ᾰ : ι) => M) (fun (i : ι) => Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.hasTop.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : ι -> M}, (Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι v)) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))) -> (forall {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))}, Eq.{succ u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.span.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6 (Set.range.{u3, succ u1} M ι (HSMul.hSMul.{max u1 u2, max u1 u3, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (ι -> M) (instHSMul.{max u1 u2, max u1 u3} (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (ι -> M) (Pi.smul'.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15747 : ι) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (fun (a._@.Mathlib.LinearAlgebra.Basis._hyg.15733 : ι) => M) (fun (i : ι) => Units.instSMulUnits.{u2, u3} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))))) w v))) (Top.top.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (Submodule.instTopSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))
+Case conversion may be inaccurate. Consider using '#align basis.units_smul_span_eq_top Basis.units_smul_span_eq_topₓ'. -/
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
-  group_smul_span_eq_top hv
+  groupSmul_span_eq_top hv
 #align basis.units_smul_span_eq_top Basis.units_smul_span_eq_top
 
+/- warning: basis.units_smul -> Basis.unitsSmul is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)
+Case conversion may be inaccurate. Consider using '#align basis.units_smul Basis.unitsSmulₓ'. -/
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` is a unit, `smul_of_is_unit`
 provides the basis corresponding to `w • v`. -/
 def unitsSmul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
@@ -1276,10 +1994,22 @@ def unitsSmul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
     (units_smul_span_eq_top v.span_eq).ge
 #align basis.units_smul Basis.unitsSmul
 
+/- warning: basis.units_smul_apply -> Basis.unitsSmul_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1))} (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.unitsSmul.{u1, u2, u3} ι R M _inst_1 _inst_3 _inst_6 v w) i) (SMul.smul.{u2, u3} (Units.{u2} R (Ring.toMonoid.{u2} R _inst_1)) M (Units.hasSmul.{u2, u3} R M (Ring.toMonoid.{u2} R _inst_1) (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))))) (w i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v i))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))} (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.unitsSmul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v w) i) (HSMul.hSMul.{u2, u1, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u2, u1} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Units.instSMulUnits.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3) _inst_6)))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
+Case conversion may be inaccurate. Consider using '#align basis.units_smul_apply Basis.unitsSmul_applyₓ'. -/
 theorem unitsSmul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : v.units_smul w i = w i • v i :=
   mk_apply (v.LinearIndependent.units_smul w) (units_smul_span_eq_top v.span_eq).ge i
 #align basis.units_smul_apply Basis.unitsSmul_apply
 
+/- warning: basis.coord_units_smul -> Basis.coord_unitsSmul is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (i : ι), Eq.{max (succ u3) (succ u2)} (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSmul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (SMul.smul.{u2, max u3 u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearMap.{u2, u2, u3, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.hasSmul.{u2, u2, u2, u3, u2} R₂ R₂ (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (DivInvMonoid.toMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Group.toDivInvMonoid.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.group.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.distribMulAction.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Module.toDistribMulAction.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} R₂ (NonUnitalNonAssocRing.toAddCommGroup.{u2} R₂ (NonAssocRing.toNonUnitalNonAssocRing.{u2} R₂ (Ring.toNonAssocRing.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.smulCommClass_right.{u2, u2, u2} R₂ R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (SMulZeroClass.toHasSmul.{u2, u2} R₂ R₂ (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (SMulWithZero.toSmulZeroClass.{u2, u2} R₂ R₂ (MulZeroClass.toHasZero.{u2} R₂ (MulZeroOneClass.toMulZeroClass.{u2} R₂ (MonoidWithZero.toMulZeroOneClass.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (MulActionWithZero.toSMulWithZero.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (AddZeroClass.toHasZero.{u2} R₂ (AddMonoid.toAddZeroClass.{u2} R₂ (AddCommMonoid.toAddMonoid.{u2} R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Module.toMulActionWithZero.{u2, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (Monoid.toMulAction.{u2} R₂ (CommMonoid.toMonoid.{u2} R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2)))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (Basis.coord.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e i))
+but is expected to have type
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w) i) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (instHSMul.{u2, max u2 u1} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Units.instSMulUnits.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SMulZeroClass.toSMul.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (LinearMap.instZeroLinearMap.{u2, u2, u1, u2} R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulWithZero.toSMulZeroClass.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (LinearMap.instZeroLinearMap.{u2, u2, u1, u2} R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MulActionWithZero.toSMulWithZero.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearMap.instZeroLinearMap.{u2, u2, u1, u2} R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Module.toMulActionWithZero.{u2, max u2 u1} R₂ (LinearMap.{u2, u2, u1, u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) M R₂ (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (LinearMap.addCommMonoid.{u2, u2, u1, u2} R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u2} R₂ R₂ R₂ M R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _inst_7 (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (smulCommClass_self.{u2, u2} R₂ R₂ (CommRing.toCommMonoid.{u2} R₂ _inst_2) (MulActionWithZero.toMulAction.{u2, u2} R₂ R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (CommMonoidWithZero.toZero.{u2} R₂ (CommSemiring.toCommMonoidWithZero.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))) (MonoidWithZero.toMulActionWithZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))))))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInvUnits.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (Basis.coord.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e i))
+Case conversion may be inaccurate. Consider using '#align basis.coord_units_smul Basis.coord_unitsSmulₓ'. -/
 @[simp]
 theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     (e.units_smul w).Coord i = (w i)⁻¹ • e.Coord i := by
@@ -1296,17 +2026,35 @@ theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     · simp
 #align basis.coord_units_smul Basis.coord_unitsSmul
 
+/- warning: basis.repr_units_smul -> Basis.repr_unitsSmul is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R₂ : Type.{u2}} {M : Type.{u3}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u3} M] [_inst_7 : Module.{u2, u3} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] (e : Basis.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (v : M) (i : ι), Eq.{succ u2} R₂ (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.hasCoeToFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 (Basis.unitsSmul.{u1, u2, u3} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (SMul.smul.{u2, u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) R₂ (Units.hasSmul.{u2, u2} R₂ R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Mul.toSMul.{u2} R₂ (Distrib.toHasMul.{u2} R₂ (Ring.toDistrib.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (Units.hasInv.{u2} R₂ (Ring.toMonoid.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (w i)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (fun (_x : Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) => ι -> R₂) (Finsupp.hasCoeToFun.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (coeFn.{max (succ u3) (succ (max u1 u2)), max (succ u3) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (fun (_x : LinearEquiv.{u2, u2, u3, max u1 u2} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) => M -> (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (LinearEquiv.hasCoeToFun.{u2, u2, u3, max u1 u2} R₂ R₂ M (Finsupp.{u1, u2} ι R₂ (MulZeroClass.toHasZero.{u2} R₂ (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) (Finsupp.addCommMonoid.{u1, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.module.{u1, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Basis.repr.{u1, u2, u3} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_7 e) v) i))
+but is expected to have type
+  forall {ι : Type.{u3}} {R₂ : Type.{u2}} {M : Type.{u1}} [_inst_2 : CommRing.{u2} R₂] [_inst_3 : AddCommGroup.{u1} M] [_inst_7 : Module.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] (e : Basis.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (w : ι -> (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (v : M) (i : ι), Eq.{succ u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 (Basis.unitsSmul.{u3, u2, u1} ι R₂ M (CommRing.toRing.{u2} R₂ _inst_2) _inst_3 _inst_7 e w)) v) i) (HSMul.hSMul.{u2, u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (instHSMul.{u2, u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (Units.instSMulUnits.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (Algebra.toSMul.{u2, u2} R₂ ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toCommSemiring.{u2} R₂ _inst_2) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) i) _inst_2)) (Algebra.id.{u2} R₂ (CommRing.toCommSemiring.{u2} R₂ _inst_2))))) (Inv.inv.{u2} (Units.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Units.instInvUnits.{u2} R₂ (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (w i)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) ι (fun (_x : ι) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : ι) => R₂) _x) (Finsupp.funLike.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SMulZeroClass.toSMul.{u2, u1} R₂ M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribSMul.toSMulZeroClass.{u2, u1} R₂ M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3))) (DistribMulAction.toDistribSMul.{u2, u1} R₂ M (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7)))) (SMulZeroClass.toSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toZero.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddMonoid.toAddZeroClass.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u1, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (MonoidWithZero.toMonoid.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)) (AddCommMonoid.toAddMonoid.{max u3 u2} (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))))) (Module.toDistribMulAction.{u2, u1} R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7) (Module.toDistribMulAction.{u2, max u3 u2} R₂ (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u3 u2) u1} R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u3 u2) u1} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (LinearEquiv.{u2, u2, u1, max u2 u3} R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} R₂ R₂ M (Finsupp.{u3, u2} ι R₂ (MonoidWithZero.toZero.{u2} R₂ (Semiring.toMonoidWithZero.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) (Finsupp.addCommMonoid.{u3, u2} ι R₂ (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))) _inst_7 (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{u3, u2, u2} ι R₂ R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R₂ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))))) (Semiring.toModule.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHom.id.{u2} R₂ (Semiring.toNonAssocSemiring.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2))) (RingHomInvPair.ids.{u2} R₂ (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)))))))) (Basis.repr.{u3, u2, u1} ι R₂ M (Ring.toSemiring.{u2} R₂ (CommRing.toRing.{u2} R₂ _inst_2)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_7 e) v) i))
+Case conversion may be inaccurate. Consider using '#align basis.repr_units_smul Basis.repr_unitsSmulₓ'. -/
 @[simp]
 theorem repr_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
     (e.units_smul w).repr v i = (w i)⁻¹ • e.repr v i :=
   congr_arg (fun f : M →ₗ[R₂] R₂ => f v) (e.coord_unitsSmul w i)
 #align basis.repr_units_smul Basis.repr_unitsSmul
 
+/- warning: basis.is_unit_smul -> Basis.isUnitSmul is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (forall {w : ι -> R}, (forall (i : ι), IsUnit.{u2} R (Ring.toMonoid.{u2} R _inst_1) (w i)) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) -> (forall {w : ι -> R}, (forall (i : ι), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (w i)) -> (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6))
+Case conversion may be inaccurate. Consider using '#align basis.is_unit_smul Basis.isUnitSmulₓ'. -/
 /-- A version of `smul_of_units` that uses `is_unit`. -/
 def isUnitSmul (v : Basis ι R M) {w : ι → R} (hw : ∀ i, IsUnit (w i)) : Basis ι R M :=
   unitsSmul v fun i => (hw i).Unit
 #align basis.is_unit_smul Basis.isUnitSmul
 
+/- warning: basis.is_unit_smul_apply -> Basis.isUnitSmul_apply is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u3} M] [_inst_6 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)] {v : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (Ring.toMonoid.{u2} R _inst_1) (w i)) (i : ι), Eq.{succ u3} M (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) (Basis.isUnitSmul.{u1, u2, u3} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)))) (w i) (coeFn.{max (succ u1) (succ u2) (succ u3), max (succ u1) (succ u3)} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) (fun (_x : Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) => ι -> M) (FunLike.hasCoeToFun.{max (succ u1) (succ u2) (succ u3), succ u1, succ u3} (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6) ι (fun (_x : ι) => M) (Basis.funLike.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_6)) v i))
+but is expected to have type
+  forall {ι : Type.{u3}} {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {v : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {w : ι -> R} (hw : forall (i : ι), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (w i)) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.isUnitSmul.{u3, u2, u1} ι R M _inst_1 _inst_3 _inst_6 v (fun (i : ι) => w i) hw) i) (HSMul.hSMul.{u2, u1, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (instHSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SMulZeroClass.toSMul.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubNegZeroMonoid.toNegZeroClass.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionMonoid.toSubNegZeroMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (SubtractionCommMonoid.toSubtractionMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (AddCommGroup.toDivisionAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) i) _inst_3) _inst_6))))) (w i) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) v i))
+Case conversion may be inaccurate. Consider using '#align basis.is_unit_smul_apply Basis.isUnitSmul_applyₓ'. -/
 theorem isUnitSmul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (w i)) (i : ι) :
     v.isUnitSmul hw i = w i • v i :=
   unitsSmul_apply i
@@ -1314,6 +2062,12 @@ theorem isUnitSmul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (
 
 section Fin
 
+/- warning: basis.mk_fin_cons -> Basis.mkFinCons is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) -> (forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N)) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)
+but is expected to have type
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Basis.{0, u1, u2} (Fin n) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (forall (c : R) (x : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3)))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))))) -> (forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y)) N)) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)
+Case conversion may be inaccurate. Consider using '#align basis.mk_fin_cons Basis.mkFinConsₓ'. -/
 /-- Let `b` be a basis for a submodule `N` of `M`. If `y : M` is linear independent of `N`
 and `y` and `N` together span the whole of `M`, then there is a basis for `M`
 whose basis vectors are given by `fin.cons y b`. -/
@@ -1333,6 +2087,12 @@ noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fi
     exact hsp x
 #align basis.mk_fin_cons Basis.mkFinCons
 
+/- warning: basis.coe_mk_fin_cons -> Basis.coe_mkFinCons is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N)), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> M) (Basis.mkFinCons.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> M) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => M) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (Basis.mkFinCons.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => M) y (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (HasLiftT.mk.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (CoeTCₓ.coe.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (coeBase.{succ u2, succ u2} (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) M (coeSubtype.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)))))) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
+but is expected to have type
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N)), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Basis.mkFinCons.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N y b hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => M) a) y (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) M (Subtype.val.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Set.{u1} M) (Set.instMembershipSet.{u1} M) x (SetLike.coe.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) N))) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons Basis.coe_mkFinConsₓ'. -/
 @[simp]
 theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R N)
     (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0) (hsp : ∀ z : M, ∃ c : R, z + c • y ∈ N) :
@@ -1340,6 +2100,12 @@ theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R
   coe_mk _ _
 #align basis.coe_mk_fin_cons Basis.coe_mkFinCons
 
+/- warning: basis.mk_fin_cons_of_le -> Basis.mkFinConsOfLe is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) -> (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) -> (forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) -> (forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))
+but is expected to have type
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) -> (Basis.{0, u1, u2} (Fin n) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) -> (LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) N O) -> (forall (c : R) (x : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u2} M 0 (Zero.toOfNat0.{u2} M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3)))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))))) -> (forall (z : M), (Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (HSMul.hSMul.{u1, u2, u2} R M M (instHSMul.{u1, u2} R M (SMulZeroClass.toSMul.{u1, u2} R M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R M (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6))))) c y)) N))) -> (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u1} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))
+Case conversion may be inaccurate. Consider using '#align basis.mk_fin_cons_of_le Basis.mkFinConsOfLeₓ'. -/
 /-- Let `b` be a basis for a submodule `N ≤ O`. If `y ∈ O` is linear independent of `N`
 and `y` and `N` together span the whole of `O`, then there is a basis for `O`
 whose basis vectors are given by `fin.cons y b`. -/
@@ -1350,6 +2116,12 @@ noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y
     (fun c x hc hx => hli c x (Submodule.mem_comap.mp hc) (congr_arg coe hx)) fun z => hsp z z.2
 #align basis.mk_fin_cons_of_le Basis.mkFinConsOfLe
 
+/- warning: basis.coe_mk_fin_cons_of_le -> Basis.coe_mkFinConsOfLe is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {M : Type.{u2}} [_inst_1 : Ring.{u1} R] [_inst_3 : AddCommGroup.{u2} M] [_inst_6 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)] {n : Nat} {N : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} {O : Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6} (y : M) (yO : Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) y O) (b : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (hNO : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.partialOrder.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) N O) (hli : forall (c : R) (x : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x N) -> (Eq.{succ u2} M (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y) x) (OfNat.ofNat.{u2} M 0 (OfNat.mk.{u2} M 0 (Zero.zero.{u2} M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3))))))))) -> (Eq.{succ u1} R c (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R _inst_1)))))))))) (hsp : forall (z : M), (Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) z O) -> (Exists.{succ u1} R (fun (c : R) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) (HAdd.hAdd.{u2, u2, u2} M M M (instHAdd.{u2} M (AddZeroClass.toHasAdd.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_3)))))) z (SMul.smul.{u1, u2} R M (SMulZeroClass.toHasSmul.{u1, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u2} R M (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u2} R M (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_3)))) (Module.toMulActionWithZero.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)))) c y)) N))), Eq.{succ u2} ((fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Basis.funLike.{0, u1, u2} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O))) (Basis.mkFinConsOfLe.{u1, u2} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u2} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (OfNat.ofNat.{0} Nat 1 (OfNat.mk.{0} Nat 1 (One.one.{0} Nat Nat.hasOne))))) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Subtype.mk.{succ u2} M (fun (x : M) => Membership.Mem.{u2, u2} M (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) (SetLike.hasMem.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u2, succ u2} (Fin n) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O)) => (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O)) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) O) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 O) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (Submodule.ofLe.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N O hNO)) (coeFn.{max 1 (succ u1) (succ u2), succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (fun (_x : Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) => (Fin n) -> (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N)) (FunLike.hasCoeToFun.{max 1 (succ u1) (succ u2), 1, succ u2} (Basis.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Basis.funLike.{0, u1, u2} (Fin n) R (coeSort.{succ u2, succ (succ u2)} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) Type.{u2} (SetLike.hasCoeToSort.{u2, u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6) M (Submodule.setLike.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6)) N) (Ring.toSemiring.{u1} R _inst_1) (Submodule.addCommMonoid.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N) (Submodule.module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_3) _inst_6 N))) b)))
+but is expected to have type
+  forall {R : Type.{u2}} {M : Type.{u1}} [_inst_1 : Ring.{u2} R] [_inst_3 : AddCommGroup.{u1} M] [_inst_6 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3)] {n : Nat} {N : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} {O : Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6} (y : M) (yO : Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) y O) (b : Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (hNO : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) N O) (hli : forall (c : R) (x : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N) -> (Eq.{succ u1} M (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y) x) (OfNat.ofNat.{u1} M 0 (Zero.toOfNat0.{u1} M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (hsp : forall (z : M), (Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) z O) -> (Exists.{succ u2} R (fun (c : R) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) (HAdd.hAdd.{u1, u1, u1} M M M (instHAdd.{u1} M (AddZeroClass.toAdd.{u1} M (AddMonoid.toAddZeroClass.{u1} M (SubNegMonoid.toAddMonoid.{u1} M (AddGroup.toSubNegMonoid.{u1} M (AddCommGroup.toAddGroup.{u1} M _inst_3)))))) z (HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_3))))) (Module.toMulActionWithZero.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6))))) c y)) N))), Eq.{succ u1} (forall (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) (fun (_x : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (Basis.funLike.{0, u2, u1} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Basis.mkFinConsOfLe.{u2, u1} R M _inst_1 _inst_3 _inst_6 n N O y yO b hNO hli hsp)) (Fin.cons.{u1} n (fun (a : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat instAddNat) n (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) a) (Subtype.mk.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O) y yO) (Function.comp.{1, succ u1, succ u1} (Fin n) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (fun (_x : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6178 : Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x O)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 O) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (Submodule.ofLe.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N O hNO)) (FunLike.coe.{max (succ u2) (succ u1), 1, succ u1} (Basis.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) (Fin n) (fun (_x : Fin n) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin n) => Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) _x) (Basis.funLike.{0, u2, u1} (Fin n) R (Subtype.{succ u1} M (fun (x : M) => Membership.mem.{u1, u1} M (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) (SetLike.instMembership.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6) M (Submodule.instSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6)) x N)) (Ring.toSemiring.{u2} R _inst_1) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u1} M _inst_3) _inst_6 N)) b)))
+Case conversion may be inaccurate. Consider using '#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLeₓ'. -/
 @[simp]
 theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
     (hNO : N ≤ O) (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0)
@@ -1359,21 +2131,45 @@ theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
   coe_mkFinCons _ _ _ _
 #align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLe
 
+/- warning: basis.fin_two_prod -> Basis.finTwoProd is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))
+but is expected to have type
+  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))
+Case conversion may be inaccurate. Consider using '#align basis.fin_two_prod Basis.finTwoProdₓ'. -/
 /-- The basis of `R × R` given by the two vectors `(1, 0)` and `(0, 1)`. -/
 protected def finTwoProd (R : Type _) [Semiring R] : Basis (Fin 2) R (R × R) :=
   Basis.ofEquivFun (LinearEquiv.finTwoArrow R R).symm
 #align basis.fin_two_prod Basis.finTwoProd
 
+/- warning: basis.fin_two_prod_zero -> Basis.finTwoProd_zero is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} (Prod.{u1, u1} R R) (coeFn.{succ u1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> (Prod.{u1, u1} R R)) (FunLike.hasCoeToFun.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) => Prod.{u1, u1} R R) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne)) (CharZero.NeZero.two.{0} Nat (AddCommMonoidWithOne.toAddMonoidWithOne.{0} Nat (NonAssocSemiring.toAddCommMonoidWithOne.{0} Nat (Semiring.toNonAssocSemiring.{0} Nat Nat.semiring))) (StrictOrderedSemiring.to_charZero.{0} Nat Nat.strictOrderedSemiring))))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))) (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))))
+but is expected to have type
+  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 0 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 0 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (FunLike.coe.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) _x) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 0 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 0 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_10))) (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)))))
+Case conversion may be inaccurate. Consider using '#align basis.fin_two_prod_zero Basis.finTwoProd_zeroₓ'. -/
 @[simp]
 theorem finTwoProd_zero (R : Type _) [Semiring R] : Basis.finTwoProd R 0 = (1, 0) := by
   simp [Basis.finTwoProd]
 #align basis.fin_two_prod_zero Basis.finTwoProd_zero
 
+/- warning: basis.fin_two_prod_one -> Basis.finTwoProd_one is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} (Prod.{u1, u1} R R) (coeFn.{succ u1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> (Prod.{u1, u1} R R)) (FunLike.hasCoeToFun.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) => Prod.{u1, u1} R R) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 1 (OfNat.mk.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) 1 (One.one.{0} (Fin (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))) (Fin.hasOneOfNeZero (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne)) (CharZero.NeZero.two.{0} Nat (AddCommMonoidWithOne.toAddMonoidWithOne.{0} Nat (NonAssocSemiring.toAddCommMonoidWithOne.{0} Nat (Semiring.toNonAssocSemiring.{0} Nat Nat.semiring))) (StrictOrderedSemiring.to_charZero.{0} Nat Nat.strictOrderedSemiring))))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} R (NonAssocSemiring.toAddCommMonoidWithOne.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))))))
+but is expected to have type
+  forall (R : Type.{u1}) [_inst_10 : Semiring.{u1} R], Eq.{succ u1} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 1 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 1 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (FunLike.coe.{succ u1, 1, succ u1} (Basis.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => Prod.{u1, u1} R R) _x) (Basis.funLike.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Basis.finTwoProd.{u1} R _inst_10) (OfNat.ofNat.{0} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) 1 (Fin.instOfNatFin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2)) 1 (NeZero.succ (OfNat.ofNat.{0} Nat 1 (instOfNatNat 1)))))) (Prod.mk.{u1, u1} R R (OfNat.ofNat.{u1} R 0 (Zero.toOfNat0.{u1} R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)))) (OfNat.ofNat.{u1} R 1 (One.toOfNat1.{u1} R (Semiring.toOne.{u1} R _inst_10))))
+Case conversion may be inaccurate. Consider using '#align basis.fin_two_prod_one Basis.finTwoProd_oneₓ'. -/
 @[simp]
 theorem finTwoProd_one (R : Type _) [Semiring R] : Basis.finTwoProd R 1 = (0, 1) := by
   simp [Basis.finTwoProd]
 #align basis.fin_two_prod_one Basis.finTwoProd_one
 
+/- warning: basis.coe_fin_two_prod_repr -> Basis.coe_finTwoProd_repr is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} ((Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> R) (coeFn.{succ u1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (fun (_x : Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) => (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) -> R) (Finsupp.hasCoeToFun.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (coeFn.{succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (fun (_x : LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) => (Prod.{u1, u1} R R) -> (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (LinearEquiv.hasCoeToFun.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) _inst_10 _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.module.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (OfNat.mk.{0} Nat 2 (bit0.{0} Nat Nat.hasAdd (One.one.{0} Nat Nat.hasOne))))) R (Prod.{u1, u1} R R) _inst_10 (Prod.addCommMonoid.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero))) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
+but is expected to have type
+  forall {R : Type.{u1}} [_inst_10 : Semiring.{u1} R] (x : Prod.{u1, u1} R R), Eq.{succ u1} (forall (ᾰ : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))), (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) ᾰ) (FunLike.coe.{succ u1, 1, succ u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) (fun (_x : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => (fun (x._@.Mathlib.Data.Finsupp.Defs._hyg.779 : Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) => R) _x) (Finsupp.funLike.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (Prod.{u1, u1} R R) (fun (_x : Prod.{u1, u1} R R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Prod.{u1, u1} R R) => Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _x) (SMulHomClass.toFunLike.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (SMulZeroClass.toSMul.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toZero.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Prod.{u1, u1} R R) (AddMonoid.toAddZeroClass.{u1} (Prod.{u1, u1} R R) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Prod.{u1, u1} R R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)))))) (SMulZeroClass.toSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toZero.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribSMul.toSMulZeroClass.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddMonoid.toAddZeroClass.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))))) (DistribMulAction.toDistribSMul.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)))))) (DistribMulActionHomClass.toSMulHomClass.{u1, u1, u1, u1} (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10)) (AddCommMonoid.toAddMonoid.{u1} (Prod.{u1, u1} R R) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (AddCommMonoid.toAddMonoid.{u1} (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))))) (Module.toDistribMulAction.{u1, u1} R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10))) (Module.toDistribMulAction.{u1, u1} R (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) (SemilinearMapClass.distribMulActionHomClass.{u1, u1, u1, u1} R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (LinearEquiv.{u1, u1, u1, u1} R R _inst_10 _inst_10 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u1, u1} R R (Prod.{u1, u1} R R) (Finsupp.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_10))) _inst_10 _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Finsupp.addCommMonoid.{0, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Finsupp.instModuleFinsuppToZeroToAddMonoidAddCommMonoid.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)) (RingHomInvPair.ids.{u1} R _inst_10) (RingHomInvPair.ids.{u1} R _inst_10)))))) (Basis.repr.{0, u1, u1} (Fin (OfNat.ofNat.{0} Nat 2 (instOfNatNat 2))) R (Prod.{u1, u1} R R) _inst_10 (Prod.instAddCommMonoidSum.{u1, u1} R R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10)))) (Prod.module.{u1, u1, u1} R R R _inst_10 (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_10))) (Semiring.toModule.{u1} R _inst_10) (Semiring.toModule.{u1} R _inst_10)) (Basis.finTwoProd.{u1} R _inst_10)) x)) (Matrix.vecCons.{u1} R (Nat.succ (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) (Prod.fst.{u1, u1} R R x) (Matrix.vecCons.{u1} R (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)) (Prod.snd.{u1, u1} R R x) (Matrix.vecEmpty.{u1} R)))
+Case conversion may be inaccurate. Consider using '#align basis.coe_fin_two_prod_repr Basis.coe_finTwoProd_reprₓ'. -/
 @[simp]
 theorem coe_finTwoProd_repr {R : Type _} [Semiring R] (x : R × R) :
     ⇑((Basis.finTwoProd R).repr x) = ![x.fst, x.snd] :=
@@ -1392,6 +2188,12 @@ variable [Ring R] [IsDomain R]
 
 variable [AddCommGroup M] [Module R M] {b : ι → M}
 
+/- warning: submodule.induction_on_rank_aux -> Submodule.inductionOnRankAux is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_2 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_1)] [_inst_3 : AddCommGroup.{u3} M] [_inst_4 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (forall (P : (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> Sort.{u4}), (forall (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall (N' : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.partialOrder.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)))) N' N) -> (forall (x : M), (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N) -> (forall (c : R) (y : M), (Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) y N') -> (Eq.{succ u3} M (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toHasAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))))) (SMul.smul.{u2, u3} R M (SMulZeroClass.toHasSmul.{u2, u3} R M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (SMulWithZero.toSmulZeroClass.{u2, u3} R M (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)))) c x) y) (OfNat.ofNat.{u3} M 0 (OfNat.mk.{u3} M 0 (Zero.zero.{u3} M (AddZeroClass.toHasZero.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3))))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (OfNat.mk.{u2} R 0 (Zero.zero.{u2} R (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R _inst_1)))))))))) -> (P N'))) -> (P N)) -> (forall (n : Nat) (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall {m : Nat} (v : (Fin m) -> (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N)), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M ((fun (a : Type.{u3}) (b : Type.{u3}) [self : HasLiftT.{succ u3, succ u3} a b] => self.0) (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (HasLiftT.mk.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (CoeTCₓ.coe.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (coeBase.{succ u3, succ u3} (coeSort.{succ u3, succ (succ u3)} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) Type.{u3} (SetLike.hasCoeToSort.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) N) M (coeSubtype.{succ u3} M (fun (x : M) => Membership.Mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.hasMem.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.setLike.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N)))))) v) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (LE.le.{0} Nat Nat.hasLe m n)) -> (P N)))
+but is expected to have type
+  forall {ι : Type.{u1}} {R : Type.{u2}} {M : Type.{u3}} [_inst_1 : Ring.{u2} R] [_inst_2 : IsDomain.{u2} R (Ring.toSemiring.{u2} R _inst_1)] [_inst_3 : AddCommGroup.{u3} M] [_inst_4 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3)], (Basis.{u1, u2, u3} ι R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (forall (P : (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> Sort.{u4}), (forall (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall (N' : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (LE.le.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Preorder.toLE.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (PartialOrder.toPreorder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (Submodule.completeLattice.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4))))) N' N) -> (forall (x : M), (Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N) -> (forall (c : R) (y : M), (Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) y N') -> (Eq.{succ u3} M (HAdd.hAdd.{u3, u3, u3} M M M (instHAdd.{u3} M (AddZeroClass.toAdd.{u3} M (AddMonoid.toAddZeroClass.{u3} M (SubNegMonoid.toAddMonoid.{u3} M (AddGroup.toSubNegMonoid.{u3} M (AddCommGroup.toAddGroup.{u3} M _inst_3)))))) (HSMul.hSMul.{u2, u3, u3} R M M (instHSMul.{u2, u3} R M (SMulZeroClass.toSMul.{u2, u3} R M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (SMulWithZero.toSMulZeroClass.{u2, u3} R M (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4))))) c x) y) (OfNat.ofNat.{u3} M 0 (Zero.toOfNat0.{u3} M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_3)))))))) -> (Eq.{succ u2} R c (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) -> (P N'))) -> (P N)) -> (forall (n : Nat) (N : Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4), (forall {m : Nat} (v : (Fin m) -> (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N))), (LinearIndependent.{0, u2, u3} (Fin m) R M (Function.comp.{1, succ u3, succ u3} (Fin m) (Subtype.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4)) x N)) M (Subtype.val.{succ u3} M (fun (x : M) => Membership.mem.{u3, u3} M (Set.{u3} M) (Set.instMembershipSet.{u3} M) x (SetLike.coe.{u3, u3} (Submodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) M (Submodule.instSetLikeSubmodule.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) N))) v) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_3) _inst_4) -> (LE.le.{0} Nat instLENat m n)) -> (P N)))
+Case conversion may be inaccurate. Consider using '#align submodule.induction_on_rank_aux Submodule.inductionOnRankAuxₓ'. -/
 /-- If `N` is a submodule with finite rank, do induction on adjoining a linear independent
 element to a submodule. -/
 def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort _)
@@ -1409,7 +2211,7 @@ def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort
     simpa using x_ortho 1 0 N.zero_mem
   induction' n with n rank_ih generalizing N
   · suffices N = ⊥ by rwa [this]
-    apply eq_bot_of_rank_eq_zero b _ fun m v hv => le_zero_iff.mp (rank_le v hv)
+    apply Basis.eq_bot_of_rank_eq_zero b _ fun m v hv => le_zero_iff.mp (rank_le v hv)
   apply ih
   intro N' N'_le x x_mem x_ortho
   apply rank_ih
@@ -1440,28 +2242,54 @@ namespace Basis
 
 section ExistsBasis
 
+#print Basis.extend /-
 /-- If `s` is a linear independent set of vectors, we can extend it to a basis. -/
 noncomputable def extend (hs : LinearIndependent K (coe : s → V)) : Basis _ K V :=
   Basis.mk
     (@LinearIndependent.restrict_of_comp_subtype _ _ _ id _ _ _ _ (hs.linearIndependent_extend _))
     (SetLike.coe_subset_coe.mp <| by simpa using hs.subset_span_extend (subset_univ s))
 #align basis.extend Basis.extend
+-/
 
+/- warning: basis.extend_apply_self -> Basis.extend_apply_self is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))), Eq.{succ u1} V (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s hs) x) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))))))) x)
+but is expected to have type
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs) x) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) x)
+Case conversion may be inaccurate. Consider using '#align basis.extend_apply_self Basis.extend_apply_selfₓ'. -/
 theorem extend_apply_self (hs : LinearIndependent K (coe : s → V)) (x : hs.extend _) :
     Basis.extend hs x = x :=
   Basis.mk_apply _ _ _
 #align basis.extend_apply_self Basis.extend_apply_self
 
+/- warning: basis.coe_extend -> Basis.coe_extend is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Eq.{succ u1} ((coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s hs)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))))))))
+but is expected to have type
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Eq.{succ u2} (forall (a : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs)) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))))
+Case conversion may be inaccurate. Consider using '#align basis.coe_extend Basis.coe_extendₓ'. -/
 @[simp]
 theorem coe_extend (hs : LinearIndependent K (coe : s → V)) : ⇑(Basis.extend hs) = coe :=
   funext (extend_apply_self hs)
 #align basis.coe_extend Basis.coe_extend
 
+/- warning: basis.range_extend -> Basis.range_extend is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Eq.{succ u1} (Set.{u1} V) (Set.range.{u1, succ u1} V (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s hs))) (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))
+but is expected to have type
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Eq.{succ u2} (Set.{u2} V) (Set.range.{u2, succ u2} V (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) (fun (_x : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s hs))) (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))
+Case conversion may be inaccurate. Consider using '#align basis.range_extend Basis.range_extendₓ'. -/
 theorem range_extend (hs : LinearIndependent K (coe : s → V)) :
     range (Basis.extend hs) = hs.extend (subset_univ _) := by
   rw [coe_extend, Subtype.range_coe_subtype, set_of_mem_eq]
 #align basis.range_extend Basis.range_extend
 
+/- warning: basis.sum_extend -> Basis.sumExtend is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u2}} {K : Type.{u3}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u3} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u3, u1} K V (Ring.toSemiring.{u3} K (DivisionRing.toRing.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {v : ι -> V} (hs : LinearIndependent.{u2, u3, u1} ι K V v (Ring.toSemiring.{u3} K (DivisionRing.toRing.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Basis.{max u2 u1, u3, u1} (Sum.{u2, u1} ι (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (SDiff.sdiff.{u1} (Set.{u1} V) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} V) (Set.booleanAlgebra.{u1} V)) (LinearIndependent.extend.{u1, u3} K V _inst_1 _inst_2 _inst_4 (Set.range.{u1, succ u2} V ι v) (Set.univ.{u1} V) (Basis.sumExtend._proof_1.{u1, u2, u3} ι K V _inst_1 _inst_2 _inst_4 v hs) (Basis.sumExtend._proof_2.{u1, u2} ι V v)) (Set.range.{u1, succ u2} V ι v)))) K V (Ring.toSemiring.{u3} K (DivisionRing.toRing.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4
+but is expected to have type
+  forall {ι : Type.{u2}} {K : Type.{u3}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u3} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u3, u1} K V (DivisionSemiring.toSemiring.{u3} K (DivisionRing.toDivisionSemiring.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {v : ι -> V} (hs : LinearIndependent.{u2, u3, u1} ι K V v (DivisionSemiring.toSemiring.{u3} K (DivisionRing.toDivisionSemiring.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Basis.{max u1 u2, u3, u1} (Sum.{u2, u1} ι (Set.Elem.{u1} V (Basis.sumExtendIndex.{u1, u2, u3} ι K V _inst_1 _inst_2 _inst_4 v hs))) K V (DivisionSemiring.toSemiring.{u3} K (DivisionRing.toDivisionSemiring.{u3} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4
+Case conversion may be inaccurate. Consider using '#align basis.sum_extend Basis.sumExtendₓ'. -/
 /-- If `v` is a linear independent family of vectors, extend it to a basis indexed by a sum type. -/
 noncomputable def sumExtend (hs : LinearIndependent K v) : Basis (Sum ι _) K V :=
   let s := Set.range v
@@ -1477,6 +2305,12 @@ noncomputable def sumExtend (hs : LinearIndependent K v) : Basis (Sum ι _) K V
         
 #align basis.sum_extend Basis.sumExtend
 
+/- warning: basis.subset_extend -> Basis.subset_extend is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] {s : Set.{u1} V} (hs : LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x s)))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), HasSubset.Subset.{u1} (Set.{u1} V) (Set.hasSubset.{u1} V) s (LinearIndependent.extend.{u1, u2} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u1} V) hs (Set.subset_univ.{u1} V s))
+but is expected to have type
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] {s : Set.{u2} V} (hs : LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x s)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), HasSubset.Subset.{u2} (Set.{u2} V) (Set.instHasSubsetSet.{u2} V) s (LinearIndependent.extend.{u2, u1} K V _inst_1 _inst_2 _inst_4 s (Set.univ.{u2} V) hs (Set.subset_univ.{u2} V s))
+Case conversion may be inaccurate. Consider using '#align basis.subset_extend Basis.subset_extendₓ'. -/
 theorem subset_extend {s : Set V} (hs : LinearIndependent K (coe : s → V)) :
     s ⊆ hs.extend (Set.subset_univ _) :=
   hs.subset_extend _
@@ -1486,25 +2320,47 @@ section
 
 variable (K V)
 
+#print Basis.ofVectorSpaceIndex /-
 /-- A set used to index `basis.of_vector_space`. -/
 noncomputable def ofVectorSpaceIndex : Set V :=
   (linearIndependent_empty K V).extend (subset_univ _)
 #align basis.of_vector_space_index Basis.ofVectorSpaceIndex
+-/
 
+#print Basis.ofVectorSpace /-
 /-- Each vector space has a basis. -/
 noncomputable def ofVectorSpace : Basis (ofVectorSpaceIndex K V) K V :=
   Basis.extend (linearIndependent_empty K V)
 #align basis.of_vector_space Basis.ofVectorSpace
+-/
 
+/- warning: basis.of_vector_space_apply_self -> Basis.ofVectorSpace_apply_self is a dubious translation:
+lean 3 declaration is
+  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)), Eq.{succ u1} V (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.ofVectorSpace.{u1, u2} K V _inst_1 _inst_2 _inst_4) x) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)))))) x)
+but is expected to have type
+  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)), Eq.{succ u2} ((fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) x) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4) x) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) x)
+Case conversion may be inaccurate. Consider using '#align basis.of_vector_space_apply_self Basis.ofVectorSpace_apply_selfₓ'. -/
 theorem ofVectorSpace_apply_self (x : ofVectorSpaceIndex K V) : ofVectorSpace K V x = x :=
   Basis.mk_apply _ _ _
 #align basis.of_vector_space_apply_self Basis.ofVectorSpace_apply_self
 
+/- warning: basis.coe_of_vector_space -> Basis.coe_ofVectorSpace is a dubious translation:
+lean 3 declaration is
+  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)], Eq.{succ u1} ((coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.ofVectorSpace.{u1, u2} K V _inst_1 _inst_2 _inst_4)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)))))))
+but is expected to have type
+  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], Eq.{succ u2} (forall (a : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)), (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)))
+Case conversion may be inaccurate. Consider using '#align basis.coe_of_vector_space Basis.coe_ofVectorSpaceₓ'. -/
 @[simp]
 theorem coe_ofVectorSpace : ⇑(ofVectorSpace K V) = coe :=
   funext fun x => ofVectorSpace_apply_self K V x
 #align basis.coe_of_vector_space Basis.coe_ofVectorSpace
 
+/- warning: basis.of_vector_space_index.linear_independent -> Basis.ofVectorSpaceIndex.linearIndependent is a dubious translation:
+lean 3 declaration is
+  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)], LinearIndependent.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (HasLiftT.mk.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (CoeTCₓ.coe.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeBase.{succ u1, succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) V (coeSubtype.{succ u1} V (fun (x : V) => Membership.Mem.{u1, u1} V (Set.{u1} V) (Set.hasMem.{u1} V) x (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4))))))) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4
+but is expected to have type
+  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], LinearIndependent.{u2, u1, u2} (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4))) K V (Subtype.val.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Set.{u2} V) (Set.instMembershipSet.{u2} V) x (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4))) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4
+Case conversion may be inaccurate. Consider using '#align basis.of_vector_space_index.linear_independent Basis.ofVectorSpaceIndex.linearIndependentₓ'. -/
 theorem ofVectorSpaceIndex.linearIndependent :
     LinearIndependent K (coe : ofVectorSpaceIndex K V → V) :=
   by
@@ -1513,10 +2369,22 @@ theorem ofVectorSpaceIndex.linearIndependent :
   rw [of_vector_space_apply_self]
 #align basis.of_vector_space_index.linear_independent Basis.ofVectorSpaceIndex.linearIndependent
 
+/- warning: basis.range_of_vector_space -> Basis.range_ofVectorSpace is a dubious translation:
+lean 3 declaration is
+  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)], Eq.{succ u1} (Set.{u1} V) (Set.range.{u1, succ u1} V (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (coeFn.{max (succ u2) (succ u1), succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (_x : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) -> V) (FunLike.hasCoeToFun.{max (succ u2) (succ u1), succ u1, succ u1} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) (fun (_x : coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) => V) (Basis.funLike.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (Basis.ofVectorSpace.{u1, u2} K V _inst_1 _inst_2 _inst_4))) (Basis.ofVectorSpaceIndex.{u1, u2} K V _inst_1 _inst_2 _inst_4)
+but is expected to have type
+  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], Eq.{succ u2} (Set.{u2} V) (Set.range.{u2, succ u2} V (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u2} (Basis.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) (fun (_x : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.546 : Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) => V) _x) (Basis.funLike.{u2, u1, u2} (Set.Elem.{u2} V (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Basis.ofVectorSpace.{u2, u1} K V _inst_1 _inst_2 _inst_4))) (Basis.ofVectorSpaceIndex.{u2, u1} K V _inst_1 _inst_2 _inst_4)
+Case conversion may be inaccurate. Consider using '#align basis.range_of_vector_space Basis.range_ofVectorSpaceₓ'. -/
 theorem range_ofVectorSpace : range (ofVectorSpace K V) = ofVectorSpaceIndex K V :=
   range_extend _
 #align basis.range_of_vector_space Basis.range_ofVectorSpace
 
+/- warning: basis.exists_basis -> Basis.exists_basis is a dubious translation:
+lean 3 declaration is
+  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)], Exists.{succ u1} (Set.{u1} V) (fun (s : Set.{u1} V) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} V) Type.{u1} (Set.hasCoeToSort.{u1} V) s) K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))
+but is expected to have type
+  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)], Exists.{succ u2} (Set.{u2} V) (fun (s : Set.{u2} V) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Set.Elem.{u2} V s) K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))
+Case conversion may be inaccurate. Consider using '#align basis.exists_basis Basis.exists_basisₓ'. -/
 theorem exists_basis : ∃ s : Set V, Nonempty (Basis s K V) :=
   ⟨ofVectorSpaceIndex K V, ⟨ofVectorSpace K V⟩⟩
 #align basis.exists_basis Basis.exists_basis
@@ -1531,6 +2399,12 @@ open Fintype
 
 variable (K V)
 
+/- warning: vector_space.card_fintype -> VectorSpace.card_fintype is a dubious translation:
+lean 3 declaration is
+  forall (K : Type.{u2}) (V : Type.{u1}) [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_6 : Fintype.{u2} K] [_inst_7 : Fintype.{u1} V], Exists.{1} Nat (fun (n : Nat) => Eq.{1} Nat (Fintype.card.{u1} V _inst_7) (HPow.hPow.{0, 0, 0} Nat Nat Nat (instHPow.{0, 0} Nat Nat (Monoid.Pow.{0} Nat Nat.monoid)) (Fintype.card.{u2} K _inst_6) n))
+but is expected to have type
+  forall (K : Type.{u1}) (V : Type.{u2}) [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] [_inst_6 : Fintype.{u1} K] [_inst_7 : Fintype.{u2} V], Exists.{1} Nat (fun (n : Nat) => Eq.{1} Nat (Fintype.card.{u2} V _inst_7) (HPow.hPow.{0, 0, 0} Nat Nat Nat (instHPow.{0, 0} Nat Nat instPowNat) (Fintype.card.{u1} K _inst_6) n))
+Case conversion may be inaccurate. Consider using '#align vector_space.card_fintype VectorSpace.card_fintypeₓ'. -/
 theorem VectorSpace.card_fintype [Fintype K] [Fintype V] : ∃ n : ℕ, card V = card K ^ n := by
   classical exact
       ⟨card (Basis.ofVectorSpaceIndex K V), Module.card_fintype (Basis.ofVectorSpace K V)⟩
@@ -1540,6 +2414,12 @@ section AtomsOfSubmoduleLattice
 
 variable {K V}
 
+/- warning: nonzero_span_atom -> nonzero_span_atom is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (v : V), (Ne.{succ u1} V v (OfNat.ofNat.{u1} V 0 (OfNat.mk.{u1} V 0 (Zero.zero.{u1} V (AddZeroClass.toHasZero.{u1} V (AddMonoid.toAddZeroClass.{u1} V (SubNegMonoid.toAddMonoid.{u1} V (AddGroup.toSubNegMonoid.{u1} V (AddCommGroup.toAddGroup.{u1} V _inst_2))))))))) -> (IsAtom.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) (Submodule.orderBot.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.span.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 (Singleton.singleton.{u1, u1} V (Set.{u1} V) (Set.hasSingleton.{u1} V) v)))
+but is expected to have type
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (v : V), (Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) -> (IsAtom.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)))) (Submodule.instOrderBotSubmoduleToLEToPreorderInstPartialOrderInstSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.span.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 (Singleton.singleton.{u2, u2} V (Set.{u2} V) (Set.instSingletonSet.{u2} V) v)))
+Case conversion may be inaccurate. Consider using '#align nonzero_span_atom nonzero_span_atomₓ'. -/
 /-- For a module over a division ring, the span of a nonzero element is an atom of the
 lattice of submodules. -/
 theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodule K V) :=
@@ -1563,6 +2443,12 @@ theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodul
     exact smul_mem T _ hs
 #align nonzero_span_atom nonzero_span_atom
 
+/- warning: atom_iff_nonzero_span -> atom_iff_nonzero_span is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (W : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Iff (IsAtom.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) (Submodule.orderBot.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) W) (Exists.{succ u1} V (fun (v : V) => Exists.{0} (Ne.{succ u1} V v (OfNat.ofNat.{u1} V 0 (OfNat.mk.{u1} V 0 (Zero.zero.{u1} V (AddZeroClass.toHasZero.{u1} V (AddMonoid.toAddZeroClass.{u1} V (SubNegMonoid.toAddMonoid.{u1} V (AddGroup.toSubNegMonoid.{u1} V (AddCommGroup.toAddGroup.{u1} V _inst_2))))))))) (fun (hv : Ne.{succ u1} V v (OfNat.ofNat.{u1} V 0 (OfNat.mk.{u1} V 0 (Zero.zero.{u1} V (AddZeroClass.toHasZero.{u1} V (AddMonoid.toAddZeroClass.{u1} V (SubNegMonoid.toAddMonoid.{u1} V (AddGroup.toSubNegMonoid.{u1} V (AddCommGroup.toAddGroup.{u1} V _inst_2))))))))) => Eq.{succ u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) W (Submodule.span.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 (Singleton.singleton.{u1, u1} V (Set.{u1} V) (Set.hasSingleton.{u1} V) v)))))
+but is expected to have type
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (W : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Iff (IsAtom.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)))) (Submodule.instOrderBotSubmoduleToLEToPreorderInstPartialOrderInstSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) W) (Exists.{succ u2} V (fun (v : V) => Exists.{0} (Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) (fun (hv : Ne.{succ u2} V v (OfNat.ofNat.{u2} V 0 (Zero.toOfNat0.{u2} V (NegZeroClass.toZero.{u2} V (SubNegZeroMonoid.toNegZeroClass.{u2} V (SubtractionMonoid.toSubNegZeroMonoid.{u2} V (SubtractionCommMonoid.toSubtractionMonoid.{u2} V (AddCommGroup.toDivisionAddCommMonoid.{u2} V _inst_2)))))))) => Eq.{succ u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) W (Submodule.span.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 (Singleton.singleton.{u2, u2} V (Set.{u2} V) (Set.instSingletonSet.{u2} V) v)))))
+Case conversion may be inaccurate. Consider using '#align atom_iff_nonzero_span atom_iff_nonzero_spanₓ'. -/
 /-- The atoms of the lattice of submodules of a module over a division ring are the
 submodules equal to the span of a nonzero element of the module. -/
 theorem atom_iff_nonzero_span (W : Submodule K V) :
@@ -1592,7 +2478,13 @@ end AtomsOfSubmoduleLattice
 
 variable {K V}
 
-theorem LinearMap.exists_left_inverse_of_injective (f : V →ₗ[K] V') (hf_inj : f.ker = ⊥) :
+/- warning: linear_map.exists_left_inverse_of_injective -> LinearMap.exists_leftInverse_of_injective is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} {V' : Type.{u3}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_3 : AddCommGroup.{u3} V'] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_5 : Module.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3)] (f : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (LinearMap.ker.{u2, u2, u1, u3, max u1 u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u1, u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f) (Bot.bot.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasBot.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) => Eq.{succ u1} (LinearMap.{u2, u2, u1, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 _inst_4) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} K K K V V' V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 _inst_5 _inst_4 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomCompTriple.right_ids.{u2, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) g f) (LinearMap.id.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))
+but is expected to have type
+  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (LinearMap.ker.{u2, u2, u3, u1, max u3 u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u3, u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) f) (Bot.bot.{u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (Submodule.instBotSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) => Eq.{succ u3} (LinearMap.{u2, u2, u3, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 _inst_4) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} K K K V V' V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 _inst_5 _inst_4 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) g f) (LinearMap.id.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)))
+Case conversion may be inaccurate. Consider using '#align linear_map.exists_left_inverse_of_injective LinearMap.exists_leftInverse_of_injectiveₓ'. -/
+theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj : f.ker = ⊥) :
     ∃ g : V' →ₗ[K] V, g.comp f = LinearMap.id :=
   by
   let B := Basis.ofVectorSpaceIndex K V
@@ -1616,18 +2508,32 @@ theorem LinearMap.exists_left_inverse_of_injective (f : V →ₗ[K] V') (hf_inj
   dsimp [hB]
   rw [Basis.ofVectorSpace_apply_self, fb_eq, hC.constr_basis]
   exact left_inverse_inv_fun (LinearMap.ker_eq_bot.1 hf_inj) _
-#align linear_map.exists_left_inverse_of_injective LinearMap.exists_left_inverse_of_injective
-
+#align linear_map.exists_left_inverse_of_injective LinearMap.exists_leftInverse_of_injective
+
+/- warning: submodule.exists_is_compl -> Submodule.exists_isCompl is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Exists.{succ u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (fun (q : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) => IsCompl.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) (CompleteLattice.toBoundedOrder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.completeLattice.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p q)
+but is expected to have type
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Exists.{succ u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (fun (q : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) => IsCompl.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) (CompleteLattice.toBoundedOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) p q)
+Case conversion may be inaccurate. Consider using '#align submodule.exists_is_compl Submodule.exists_isComplₓ'. -/
 theorem Submodule.exists_isCompl (p : Submodule K V) : ∃ q : Submodule K V, IsCompl p q :=
-  let ⟨f, hf⟩ := p.Subtype.exists_left_inverse_of_injective p.ker_subtype
+  let ⟨f, hf⟩ := p.Subtype.exists_leftInverse_of_injective p.ker_subtype
   ⟨f.ker, LinearMap.isCompl_of_proj <| LinearMap.ext_iff.1 hf⟩
 #align submodule.exists_is_compl Submodule.exists_isCompl
 
+#print Module.Submodule.complementedLattice /-
 instance Module.Submodule.complementedLattice : ComplementedLattice (Submodule K V) :=
   ⟨Submodule.exists_isCompl⟩
 #align module.submodule.complemented_lattice Module.Submodule.complementedLattice
+-/
 
-theorem LinearMap.exists_right_inverse_of_surjective (f : V →ₗ[K] V') (hf_surj : f.range = ⊤) :
+/- warning: linear_map.exists_right_inverse_of_surjective -> LinearMap.exists_rightInverse_of_surjective is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} {V' : Type.{u3}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_3 : AddCommGroup.{u3} V'] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_5 : Module.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3)] (f : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u3} (Submodule.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5) (LinearMap.range.{u2, u2, u1, u3, max u1 u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) (LinearMap.semilinearMapClass.{u2, u2, u1, u3} K K V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) (RingHomSurjective.ids.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) f) (Top.top.{u3} (Submodule.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5) (Submodule.hasTop.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u3, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_5 _inst_4) => Eq.{succ u3} (LinearMap.{u2, u2, u3, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V' V' (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5 _inst_5) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} K K K V' V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5 _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomCompTriple.right_ids.{u2, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f g) (LinearMap.id.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_5)))
+but is expected to have type
+  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5), (Eq.{succ u1} (Submodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5) (LinearMap.range.{u2, u2, u3, u1, max u3 u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u3, u1} K K V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) (RingHomSurjective.ids.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))) f) (Top.top.{u1} (Submodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5) (Submodule.instTopSubmodule.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5))) -> (Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) (fun (g : LinearMap.{u2, u2, u1, u3} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_5 _inst_4) => Eq.{succ u1} (LinearMap.{u2, u2, u1, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V' V' (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5 _inst_5) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} K K K V' V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5 _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) f g) (LinearMap.id.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_5)))
+Case conversion may be inaccurate. Consider using '#align linear_map.exists_right_inverse_of_surjective LinearMap.exists_rightInverse_of_surjectiveₓ'. -/
+theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_surj : f.range = ⊤) :
     ∃ g : V' →ₗ[K] V, f.comp g = LinearMap.id :=
   by
   let C := Basis.ofVectorSpaceIndex K V'
@@ -1637,18 +2543,30 @@ theorem LinearMap.exists_right_inverse_of_surjective (f : V →ₗ[K] V') (hf_su
   refine' hC.ext fun c => _
   rw [LinearMap.comp_apply, hC.constr_basis]
   simp [right_inverse_inv_fun (LinearMap.range_eq_top.1 hf_surj) c]
-#align linear_map.exists_right_inverse_of_surjective LinearMap.exists_right_inverse_of_surjective
-
+#align linear_map.exists_right_inverse_of_surjective LinearMap.exists_rightInverse_of_surjective
+
+/- warning: linear_map.exists_extend -> LinearMap.exists_extend is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} {V' : Type.{u3}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_3 : AddCommGroup.{u3} V'] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] [_inst_5 : Module.{u2, u3} K V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3)] {p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4} (f : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) V' (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) _inst_5), Exists.{max (succ u1) (succ u3)} (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) (fun (g : LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) _inst_4 _inst_5) => Eq.{max (succ u1) (succ u3)} (LinearMap.{u2, u2, u1, u3} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) V' (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) _inst_5) (LinearMap.comp.{u2, u2, u2, u1, u1, u3} K K K (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) V V' (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u3} V' _inst_3) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomCompTriple.right_ids.{u2, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) g (Submodule.subtype.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p)) f)
+but is expected to have type
+  forall {K : Type.{u2}} {V : Type.{u3}} {V' : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u3} V] [_inst_3 : AddCommGroup.{u1} V'] [_inst_4 : Module.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2)] [_inst_5 : Module.{u2, u1} K V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3)] {p : Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4} (f : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V' (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_5), Exists.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) (fun (g : LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) V V' (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) _inst_4 _inst_5) => Eq.{max (succ u3) (succ u1)} (LinearMap.{u2, u2, u3, u1} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V' (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_5) (LinearMap.comp.{u2, u2, u2, u3, u3, u1} K K K (Subtype.{succ u3} V (fun (x : V) => Membership.mem.{u3, u3} V (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) (SetLike.instMembership.{u3, u3} (Submodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4)) x p)) V V' (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) (AddCommGroup.toAddCommMonoid.{u1} V' _inst_3) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p) _inst_4 _inst_5 (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)))) (RingHomCompTriple.ids.{u2, u2} K K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1))))) g (Submodule.subtype.{u2, u3} K V (DivisionSemiring.toSemiring.{u2} K (DivisionRing.toDivisionSemiring.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} V _inst_2) _inst_4 p)) f)
+Case conversion may be inaccurate. Consider using '#align linear_map.exists_extend LinearMap.exists_extendₓ'. -/
 /-- Any linear map `f : p →ₗ[K] V'` defined on a subspace `p` can be extended to the whole
 space. -/
 theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
     ∃ g : V →ₗ[K] V', g.comp p.Subtype = f :=
-  let ⟨g, hg⟩ := p.Subtype.exists_left_inverse_of_injective p.ker_subtype
+  let ⟨g, hg⟩ := p.Subtype.exists_leftInverse_of_injective p.ker_subtype
   ⟨f.comp g, by rw [LinearMap.comp_assoc, hg, f.comp_id]⟩
 #align linear_map.exists_extend LinearMap.exists_extend
 
 open Submodule LinearMap
 
+/- warning: submodule.exists_le_ker_of_lt_top -> Submodule.exists_le_ker_of_lt_top is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), (LT.lt.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toLT.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (Top.top.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasTop.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4))) -> (Exists.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (fun (f : LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) => Exists.{0} (Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) (fun (H : Ne.{max (succ u1) (succ u2)} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) f (OfNat.ofNat.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (OfNat.mk.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) 0 (Zero.zero.{max u1 u2} (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.hasZero.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))))))) => LE.le.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Preorder.toLE.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)))) p (LinearMap.ker.{u2, u2, u1, u2, max u1 u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.{u2, u2, u1, u2} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (LinearMap.semilinearMapClass.{u2, u2, u1, u2} K K V K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (AddCommGroup.toAddCommMonoid.{u2} K (NonUnitalNonAssocRing.toAddCommGroup.{u2} K (NonAssocRing.toNonUnitalNonAssocRing.{u2} K (Ring.toNonAssocRing.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) _inst_4 (Semiring.toModule.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))))) f))))
+but is expected to have type
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), (LT.lt.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLT.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (Top.top.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.instTopSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))) -> (Exists.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) (fun (f : LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) => And (Ne.{max (succ u2) (succ u1)} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) f (OfNat.ofNat.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) 0 (Zero.toOfNat0.{max u2 u1} (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) (LinearMap.instZeroLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))))))) (LE.le.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.completeLattice.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4))))) p (LinearMap.ker.{u1, u1, u2, u1, max u2 u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (LinearMap.{u1, u1, u2, u1} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) V K (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))) (LinearMap.instSemilinearMapClassLinearMap.{u1, u1, u2, u1} K K V K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} K (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} K (NonUnitalRing.toNonUnitalNonAssocRing.{u1} K (Ring.toNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1))))) _inst_4 (instModuleToSemiringToAddCommMonoidToNonUnitalNonAssocSemiringToNonUnitalNonAssocRingToNonUnitalRing.{u1} K (DivisionRing.toRing.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))))) f))))
+Case conversion may be inaccurate. Consider using '#align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_topₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (f «expr ≠ » (0 : «expr →ₗ[ ] »(V, K, K))) -/
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
@@ -1667,6 +2585,12 @@ theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
     simpa using (LinearMap.congr_fun hf _).trans this
 #align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_top
 
+/- warning: quotient_prod_linear_equiv -> quotient_prod_linearEquiv is a dubious translation:
+lean 3 declaration is
+  forall {K : Type.{u2}} {V : Type.{u1}} [_inst_1 : DivisionRing.{u2} K] [_inst_2 : AddCommGroup.{u1} V] [_inst_4 : Module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2)] (p : Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4), Nonempty.{succ u1} (LinearEquiv.{u2, u2, u1, u1} K K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHom.id.{u2} K (Semiring.toNonAssocSemiring.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)))) (RingHomInvPair.ids.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (RingHomInvPair.ids.{u2} K (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1))) (Prod.{u1, u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p)) V (Prod.addCommMonoid.{u1, u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) (AddCommGroup.toAddCommMonoid.{u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4 p)) (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) (Prod.module.{u2, u1, u1} K (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (coeSort.{succ u1, succ (succ u1)} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) Type.{u1} (SetLike.hasCoeToSort.{u1, u1} (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) V (Submodule.setLike.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4)) p) (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} (HasQuotient.Quotient.{u1, u1} V (Submodule.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4) (Submodule.hasQuotient.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4 p)) (Submodule.addCommMonoid.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p) (Submodule.Quotient.module.{u2, u1} K V (DivisionRing.toRing.{u2} K _inst_1) _inst_2 _inst_4 p) (Submodule.module.{u2, u1} K V (Ring.toSemiring.{u2} K (DivisionRing.toRing.{u2} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} V _inst_2) _inst_4 p)) _inst_4)
+but is expected to have type
+  forall {K : Type.{u1}} {V : Type.{u2}} [_inst_1 : DivisionRing.{u1} K] [_inst_2 : AddCommGroup.{u2} V] [_inst_4 : Module.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2)] (p : Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4), Nonempty.{succ u2} (LinearEquiv.{u1, u1, u2, u2} K K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (RingHom.id.{u1} K (Semiring.toNonAssocSemiring.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)))) (RingHomInvPair.ids.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (RingHomInvPair.ids.{u1} K (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1))) (Prod.{u2, u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p))) V (Prod.instAddCommMonoidSum.{u2, u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p)) (AddCommGroup.toAddCommMonoid.{u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p)) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) (Prod.module.{u1, u2, u2} K (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Subtype.{succ u2} V (fun (x : V) => Membership.mem.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (SetLike.instMembership.{u2, u2} (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) V (Submodule.instSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4)) x p)) (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} (HasQuotient.Quotient.{u2, u2} V (Submodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4) (Submodule.hasQuotient.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4) p) (Submodule.Quotient.addCommGroup.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p)) (Submodule.instAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p) (Submodule.Quotient.module.{u1, u2} K V (DivisionRing.toRing.{u1} K _inst_1) _inst_2 _inst_4 p) (Submodule.instModuleSubtypeMemSubmoduleInstMembershipInstSetLikeSubmoduleInstAddCommMonoidSubtypeMemSubmoduleInstMembershipInstSetLikeSubmodule.{u1, u2} K V (DivisionSemiring.toSemiring.{u1} K (DivisionRing.toDivisionSemiring.{u1} K _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} V _inst_2) _inst_4 p)) _inst_4)
+Case conversion may be inaccurate. Consider using '#align quotient_prod_linear_equiv quotient_prod_linearEquivₓ'. -/
 theorem quotient_prod_linearEquiv (p : Submodule K V) : Nonempty (((V ⧸ p) × p) ≃ₗ[K] V) :=
   let ⟨q, hq⟩ := p.exists_isCompl
   Nonempty.intro <|
Diff
@@ -1656,14 +1656,14 @@ theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
     ∃ (f : _)(_ : f ≠ (0 : V →ₗ[K] K)), p ≤ ker f :=
   by
   rcases SetLike.exists_of_lt hp with ⟨v, -, hpv⟩; clear hp
-  rcases(LinearPmap.supSpanSingleton ⟨p, 0⟩ v (1 : K) hpv).toFun.exists_extend with ⟨f, hf⟩
+  rcases(LinearPMap.supSpanSingleton ⟨p, 0⟩ v (1 : K) hpv).toFun.exists_extend with ⟨f, hf⟩
   refine' ⟨f, _, _⟩
   · rintro rfl
     rw [LinearMap.zero_comp] at hf
-    have := LinearPmap.supSpanSingleton_apply_mk ⟨p, 0⟩ v (1 : K) hpv 0 p.zero_mem 1
+    have := LinearPMap.supSpanSingleton_apply_mk ⟨p, 0⟩ v (1 : K) hpv 0 p.zero_mem 1
     simpa using (LinearMap.congr_fun hf _).trans this
   · refine' fun x hx => mem_ker.2 _
-    have := LinearPmap.supSpanSingleton_apply_mk ⟨p, 0⟩ v (1 : K) hpv x hx 0
+    have := LinearPMap.supSpanSingleton_apply_mk ⟨p, 0⟩ v (1 : K) hpv x hx 0
     simpa using (LinearMap.congr_fun hf _).trans this
 #align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_top
 

Changes in mathlib4

mathlib3
mathlib4
chore: remove redundant LinearEquiv.map_neg/sub (#12330)

These are redundant with _root_.{map_neg,map_sub}.

Diff
@@ -1573,8 +1573,8 @@ theorem union_support_maximal_linearIndependent_eq_range_basis {ι : Type w} (b
       rw [← eq_neg_iff_add_eq_zero] at z
       replace z := neg_eq_iff_eq_neg.mpr z
       apply_fun fun x => b.repr x b' at z
-      simp only [repr_self, LinearEquiv.map_smul, mul_one, Finsupp.single_eq_same, Pi.neg_apply,
-        Finsupp.smul_single', LinearEquiv.map_neg, Finsupp.coe_neg] at z
+      simp only [repr_self, map_smul, mul_one, Finsupp.single_eq_same, Pi.neg_apply,
+        Finsupp.smul_single', map_neg, Finsupp.coe_neg] at z
       erw [DFunLike.congr_fun (Finsupp.apply_total R (b.repr : M →ₗ[R] ι →₀ R) v l.some) b'] at z
       simpa [Finsupp.total_apply, w] using z
     -- Then all the other coefficients are zero, because `v` is linear independent.
chore: avoid id.def (adaptation for nightly-2024-03-27) (#11829)

Co-authored-by: Ruben Van de Velde <65514131+Ruben-VandeVelde@users.noreply.github.com>

Diff
@@ -234,7 +234,7 @@ theorem coe_sumCoords_eq_finsum : (b.sumCoords : M → R) = fun m => ∑ᶠ i, b
   ext m
   simp only [Basis.sumCoords, Basis.coord, Finsupp.lapply_apply, LinearMap.id_coe,
     LinearEquiv.coe_coe, Function.comp_apply, Finsupp.coe_lsum, LinearMap.coe_comp,
-    finsum_eq_sum _ (b.repr m).finite_support, Finsupp.sum, Finset.finite_toSet_toFinset, id.def,
+    finsum_eq_sum _ (b.repr m).finite_support, Finsupp.sum, Finset.finite_toSet_toFinset, id,
     Finsupp.fun_support_eq]
 #align basis.coe_sum_coords_eq_finsum Basis.coe_sumCoords_eq_finsum
 
@@ -244,13 +244,13 @@ theorem coe_sumCoords_of_fintype [Fintype ι] : (b.sumCoords : M → R) = ∑ i,
   -- Porting note: - `eq_self_iff_true`
   --               + `comp_apply` `LinearMap.coeFn_sum`
   simp only [sumCoords, Finsupp.sum_fintype, LinearMap.id_coe, LinearEquiv.coe_coe, coord_apply,
-    id.def, Fintype.sum_apply, imp_true_iff, Finsupp.coe_lsum, LinearMap.coe_comp, comp_apply,
+    id, Fintype.sum_apply, imp_true_iff, Finsupp.coe_lsum, LinearMap.coe_comp, comp_apply,
     LinearMap.coeFn_sum]
 #align basis.coe_sum_coords_of_fintype Basis.coe_sumCoords_of_fintype
 
 @[simp]
 theorem sumCoords_self_apply : b.sumCoords (b i) = 1 := by
-  simp only [Basis.sumCoords, LinearMap.id_coe, LinearEquiv.coe_coe, id.def, Basis.repr_self,
+  simp only [Basis.sumCoords, LinearMap.id_coe, LinearEquiv.coe_coe, id, Basis.repr_self,
     Function.comp_apply, Finsupp.coe_lsum, LinearMap.coe_comp, Finsupp.sum_single_index]
 #align basis.sum_coords_self_apply Basis.sumCoords_self_apply
 
chore: classify porting notes about additional necessary beta reduction (#12130)

This subsumes some of the notes in #10752 and #10971. I'm on the fence as to whether replacing the dsimp only by beta_reduce is useful; this is easy to revert if needed.

Diff
@@ -313,8 +313,8 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
     (x : M) (i : ι) : b.repr x i = f x i := by
   let f_i : M →ₗ[R] R :=
     { toFun := fun x => f x i
-      -- Porting note: `dsimp only []` is required for beta reduction.
-      map_add' := fun _ _ => by dsimp only []; rw [hadd, Pi.add_apply]
+      -- Porting note(#12129): additional beta reduction needed
+      map_add' := fun _ _ => by beta_reduce; rw [hadd, Pi.add_apply]
       map_smul' := fun _ _ => by simp [hsmul, Pi.smul_apply] }
   have : Finsupp.lapply i ∘ₗ ↑b.repr = f_i := by
     refine' b.ext fun j => _
chore: Reduce scope of LinearOrderedCommGroupWithZero (#11716)

Reconstitute the file Algebra.Order.Monoid.WithZero from three files:

  • Algebra.Order.Monoid.WithZero.Defs
  • Algebra.Order.Monoid.WithZero.Basic
  • Algebra.Order.WithZero

Avoid importing it in many files. Most uses were just to get le_zero_iff to work on Nat.

Before pre_11716

After post_11716

Diff
@@ -1358,7 +1358,7 @@ def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort*
     simpa [x_mem] using x_ortho 1 0 N.zero_mem
   induction' n with n rank_ih generalizing N
   · suffices N = ⊥ by rwa [this]
-    apply Basis.eq_bot_of_rank_eq_zero b _ fun m hv => le_zero_iff.mp (rank_le _ hv)
+    apply Basis.eq_bot_of_rank_eq_zero b _ fun m hv => Nat.le_zero.mp (rank_le _ hv)
   apply ih
   intro N' N'_le x x_mem x_ortho
   apply rank_ih
chore(*): remove empty lines between variable statements (#11418)

Empty lines were removed by executing the following Python script twice

import os
import re


# Loop through each file in the repository
for dir_path, dirs, files in os.walk('.'):
  for filename in files:
    if filename.endswith('.lean'):
      file_path = os.path.join(dir_path, filename)

      # Open the file and read its contents
      with open(file_path, 'r') as file:
        content = file.read()

      # Use a regular expression to replace sequences of "variable" lines separated by empty lines
      # with sequences without empty lines
      modified_content = re.sub(r'(variable.*\n)\n(variable(?! .* in))', r'\1\2', content)

      # Write the modified content back to the file
      with open(file_path, 'w') as file:
        file.write(modified_content)
Diff
@@ -40,7 +40,6 @@ variable {ι : Type*} {ι' : Type*} {K : Type*} {V : Type*} {V' : Type*}
 section DivisionRing
 
 variable [DivisionRing K] [AddCommGroup V] [AddCommGroup V'] [Module K V] [Module K V']
-
 variable {v : ι → V} {s t : Set V} {x y z : V}
 
 open Submodule
chore(*): remove empty lines between variable statements (#11418)

Empty lines were removed by executing the following Python script twice

import os
import re


# Loop through each file in the repository
for dir_path, dirs, files in os.walk('.'):
  for filename in files:
    if filename.endswith('.lean'):
      file_path = os.path.join(dir_path, filename)

      # Open the file and read its contents
      with open(file_path, 'r') as file:
        content = file.read()

      # Use a regular expression to replace sequences of "variable" lines separated by empty lines
      # with sequences without empty lines
      modified_content = re.sub(r'(variable.*\n)\n(variable(?! .* in))', r'\1\2', content)

      # Write the modified content back to the file
      with open(file_path, 'w') as file:
        file.write(modified_content)
Diff
@@ -409,7 +409,6 @@ end MapCoeffs
 section Reindex
 
 variable (b' : Basis ι' R M')
-
 variable (e : ι ≃ ι')
 
 /-- `b.reindex (e : ι ≃ ι')` is a basis indexed by `ι'` -/
@@ -593,7 +592,6 @@ theorem mem_submodule_iff {P : Submodule R M} (b : Basis ι R P) {x : M} :
 section Constr
 
 variable (S : Type*) [Semiring S] [Module S M']
-
 variable [SMulCommClass R S M']
 
 /-- Construct a linear map given the value at the basis, called `Basis.constr b S f` where `b` is
@@ -666,7 +664,6 @@ end Constr
 section Equiv
 
 variable (b' : Basis ι' R M') (e : ι ≃ ι')
-
 variable [AddCommMonoid M''] [Module R M'']
 
 /-- If `b` is a basis for `M` and `b'` a basis for `M'`, and the index types are equivalent,
@@ -980,7 +977,6 @@ theorem Basis.equivFun_ofEquivFun [Finite ι] (e : M ≃ₗ[R] ι → R) :
 #align basis.equiv_fun_of_equiv_fun Basis.equivFun_ofEquivFun
 
 variable (S : Type*) [Semiring S] [Module S M']
-
 variable [SMulCommClass R S M']
 
 @[simp]
@@ -1012,9 +1008,7 @@ section CommSemiring
 namespace Basis
 
 variable [CommSemiring R]
-
 variable [AddCommMonoid M] [Module R M] [AddCommMonoid M'] [Module R M']
-
 variable (b : Basis ι R M) (b' : Basis ι' R M')
 
 /-- If `b` is a basis for `M` and `b'` a basis for `M'`,
@@ -1070,13 +1064,9 @@ section Module
 open LinearMap
 
 variable {v : ι → M}
-
 variable [Ring R] [CommRing R₂] [AddCommGroup M] [AddCommGroup M'] [AddCommGroup M'']
-
 variable [Module R M] [Module R₂ M] [Module R M'] [Module R M'']
-
 variable {c d : R} {x y : M}
-
 variable (b : Basis ι R M)
 
 namespace Basis
@@ -1434,11 +1424,8 @@ lemma Basis.mem_center_iff {A}
 section RestrictScalars
 
 variable {S : Type*} [CommRing R] [Ring S] [Nontrivial S] [AddCommGroup M]
-
 variable [Algebra R S] [Module S M] [Module R M]
-
 variable [IsScalarTower R S M] [NoZeroSMulDivisors R S] (b : Basis ι S M)
-
 variable (R)
 
 open Submodule
@@ -1491,9 +1478,7 @@ open Basis Cardinal
 universe v v' v'' u₁' w w'
 
 variable {R : Type u} {M M₁ : Type v} {M' : Type v'} {ι : Type w}
-
 variable [Ring R] [AddCommGroup M] [AddCommGroup M'] [AddCommGroup M₁] [Nontrivial R]
-
 variable [Module R M] [Module R M'] [Module R M₁]
 
 -- One might hope that a finite spanning set implies that any linearly independent set is finite.
style: homogenise porting notes (#11145)

Homogenises porting notes via capitalisation and addition of whitespace.

It makes the following changes:

  • converts "--porting note" into "-- Porting note";
  • converts "porting note" into "Porting note".
Diff
@@ -1293,7 +1293,7 @@ noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fi
 theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R N)
     (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0) (hsp : ∀ z : M, ∃ c : R, z + c • y ∈ N) :
     (mkFinCons y b hli hsp : Fin (n + 1) → M) = Fin.cons y ((↑) ∘ b) := by
-  -- porting note: without `unfold`, Lean can't reuse the proofs included in the definition
+  -- Porting note: without `unfold`, Lean can't reuse the proofs included in the definition
   -- `mkFinCons`
   unfold mkFinCons
   exact coe_mk (v := Fin.cons y (N.subtype ∘ b)) _ _
chore: prepare Lean version bump with explicit simp (#10999)

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -245,7 +245,7 @@ theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_sur
   haveI : Inhabited V := ⟨0⟩
   refine' ⟨(hC.constr ℕ : _ → _) (C.restrict (invFun f)), hC.ext fun c => _⟩
   rw [LinearMap.comp_apply, hC.constr_basis]
-  simp [rightInverse_invFun (LinearMap.range_eq_top.1 hf_surj) c]
+  simp [hC, rightInverse_invFun (LinearMap.range_eq_top.1 hf_surj) c]
 #align linear_map.exists_right_inverse_of_surjective LinearMap.exists_rightInverse_of_surjective
 
 /-- Any linear map `f : p →ₗ[K] V'` defined on a subspace `p` can be extended to the whole
chore: prepare Lean version bump with explicit simp (#10999)

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -1103,7 +1103,7 @@ theorem maximal [Nontrivial R] (b : Basis ι R M) : b.linearIndependent.Maximal
   refine' hi.total_ne_of_not_mem_support _ _ e
   simp only [Finset.mem_map, Finsupp.support_embDomain]
   rintro ⟨j, -, W⟩
-  simp only [Embedding.coeFn_mk, Subtype.mk_eq_mk] at W
+  simp only [u, Embedding.coeFn_mk, Subtype.mk_eq_mk] at W
   apply q ⟨j, W⟩
 #align basis.maximal Basis.maximal
 
@@ -1562,7 +1562,7 @@ theorem union_support_maximal_linearIndependent_eq_range_basis {ι : Type w} (b
   have r : range v ⊆ range v' := by
     rintro - ⟨k, rfl⟩
     use some k
-    simp only [Option.elim_some]
+    simp only [v', Option.elim_some]
   have r' : b b' ∉ range v := by
     rintro ⟨k, p⟩
     simpa [w] using congr_arg (fun m => (b.repr m) b') p
@@ -1570,7 +1570,7 @@ theorem union_support_maximal_linearIndependent_eq_range_basis {ι : Type w} (b
     intro e
     have p : b b' ∈ range v' := by
       use none
-      simp only [Option.elim_none]
+      simp only [v', Option.elim_none]
     rw [← e] at p
     exact r' p
   -- The key step in the proof is checking that this strictly larger family is linearly independent.
@@ -1579,7 +1579,7 @@ theorem union_support_maximal_linearIndependent_eq_range_basis {ι : Type w} (b
     rw [linearIndependent_iff]
     intro l z
     rw [Finsupp.total_option] at z
-    simp only [Option.elim'] at z
+    simp only [v', Option.elim'] at z
     change _ + Finsupp.total κ M R v l.some = 0 at z
     -- We have some linear combination of `b b'` and the `v i`, which we want to show is trivial.
     -- We'll first show the coefficient of `b b'` is zero,
chore: Remove unnecessary "rw"s (#10704)

Remove unnecessary "rw"s.

Diff
@@ -848,7 +848,7 @@ theorem basis_singleton_iff {R M : Type*} [Ring R] [Nontrivial R] [AddCommGroup
         map_smul' := fun c y => ?_ }⟩
     · simp [Finsupp.add_apply, add_smul]
     · simp only [Finsupp.coe_smul, Pi.smul_apply, RingHom.id_apply]
-      rw [← smul_assoc, smul_eq_mul]
+      rw [← smul_assoc]
     · refine' smul_left_injective _ nz _
       simp only [Finsupp.single_eq_same]
       exact (w (f default • x)).choose_spec
chore: tidy various files (#10311)
Diff
@@ -1528,9 +1528,8 @@ lemma basis_finite_of_finite_spans (w : Set M) (hw : w.Finite) (s : span R w = 
     rw [← b.total_repr x, Finsupp.span_image_eq_map_total, Submodule.mem_map]
     use b.repr x
     simp only [and_true_iff, eq_self_iff_true, Finsupp.mem_supported]
-    change (b.repr x).support ≤ S
-    convert Finset.le_sup (α := Finset ι) (by simp : (⟨x, m⟩ : w) ∈ Finset.univ)
-    rfl
+    rw [Finset.coe_subset, ← Finset.le_iff_subset]
+    exact Finset.le_sup (f := fun x : w ↦ (b.repr ↑x).support) (Finset.mem_univ (⟨x, m⟩ : w))
   -- Thus this finite subset of the basis elements spans the entire module.
   have k : span R bS = ⊤ := eq_top_iff.2 (le_trans s.ge (span_le.2 h))
   -- Now there is some `x : ι` not in `S`, since `ι` is infinite.
@@ -1563,7 +1562,7 @@ theorem union_support_maximal_linearIndependent_eq_range_basis {ι : Type w} (b
   have r : range v ⊆ range v' := by
     rintro - ⟨k, rfl⟩
     use some k
-    rfl
+    simp only [Option.elim_some]
   have r' : b b' ∉ range v := by
     rintro ⟨k, p⟩
     simpa [w] using congr_arg (fun m => (b.repr m) b') p
@@ -1571,7 +1570,7 @@ theorem union_support_maximal_linearIndependent_eq_range_basis {ι : Type w} (b
     intro e
     have p : b b' ∈ range v' := by
       use none
-      rfl
+      simp only [Option.elim_none]
     rw [← e] at p
     exact r' p
   -- The key step in the proof is checking that this strictly larger family is linearly independent.
feat(LinearAlgebra/Basis): assume [Finite ι] instead of [Fintype ι] (#10251)
Diff
@@ -882,11 +882,9 @@ open Basis
 
 open Fintype
 
-variable [Fintype ι] (b : Basis ι R M)
-
 /-- A module over `R` with a finite basis is linearly equivalent to functions from its basis to `R`.
 -/
-def Basis.equivFun : M ≃ₗ[R] ι → R :=
+def Basis.equivFun [Finite ι] (b : Basis ι R M) : M ≃ₗ[R] ι → R :=
   LinearEquiv.trans b.repr
     ({ Finsupp.equivFunOnFinite with
         toFun := (↑)
@@ -896,12 +894,12 @@ def Basis.equivFun : M ≃ₗ[R] ι → R :=
 #align basis.equiv_fun Basis.equivFun
 
 /-- A module over a finite ring that admits a finite basis is finite. -/
-def Module.fintypeOfFintype (b : Basis ι R M) [Fintype R] : Fintype M :=
+def Module.fintypeOfFintype [Fintype ι] (b : Basis ι R M) [Fintype R] : Fintype M :=
   haveI := Classical.decEq ι
   Fintype.ofEquiv _ b.equivFun.toEquiv.symm
 #align module.fintype_of_fintype Module.fintypeOfFintype
 
-theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] :
+theorem Module.card_fintype [Fintype ι] (b : Basis ι R M) [Fintype R] [Fintype M] :
     card M = card R ^ card ι := by
   classical
     calc
@@ -912,60 +910,55 @@ theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] :
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
 a function `x : ι → R` to the linear combination `∑_i x i • v i`. -/
 @[simp]
-theorem Basis.equivFun_symm_apply (x : ι → R) : b.equivFun.symm x = ∑ i, x i • b i := by
+theorem Basis.equivFun_symm_apply [Fintype ι] (b : Basis ι R M) (x : ι → R) :
+    b.equivFun.symm x = ∑ i, x i • b i := by
   simp [Basis.equivFun, Finsupp.total_apply, Finsupp.sum_fintype, Finsupp.equivFunOnFinite]
 #align basis.equiv_fun_symm_apply Basis.equivFun_symm_apply
 
 @[simp]
-theorem Basis.equivFun_apply (u : M) : b.equivFun u = b.repr u :=
+theorem Basis.equivFun_apply [Finite ι] (b : Basis ι R M) (u : M) : b.equivFun u = b.repr u :=
   rfl
 #align basis.equiv_fun_apply Basis.equivFun_apply
 
 @[simp]
-theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.trans b.equivFun :=
+theorem Basis.map_equivFun [Finite ι] (b : Basis ι R M) (f : M ≃ₗ[R] M') :
+    (b.map f).equivFun = f.symm.trans b.equivFun :=
   rfl
 #align basis.map_equiv_fun Basis.map_equivFun
 
-theorem Basis.sum_equivFun (u : M) : ∑ i, b.equivFun u i • b i = u := by
-  conv_rhs => rw [← b.total_repr u]
-  simp [Finsupp.total_apply, Finsupp.sum_fintype, b.equivFun_apply]
+theorem Basis.sum_equivFun [Fintype ι] (b : Basis ι R M) (u : M) :
+    ∑ i, b.equivFun u i • b i = u := by
+  rw [← b.equivFun_symm_apply, b.equivFun.symm_apply_apply]
 #align basis.sum_equiv_fun Basis.sum_equivFun
 
-theorem Basis.sum_repr (u : M) : ∑ i, b.repr u i • b i = u :=
+theorem Basis.sum_repr [Fintype ι] (b : Basis ι R M) (u : M) : ∑ i, b.repr u i • b i = u :=
   b.sum_equivFun u
 #align basis.sum_repr Basis.sum_repr
 
 @[simp]
-theorem Basis.equivFun_self [DecidableEq ι] (i j : ι) :
+theorem Basis.equivFun_self [Finite ι] [DecidableEq ι] (b : Basis ι R M) (i j : ι) :
     b.equivFun (b i) j = if i = j then 1 else 0 := by rw [b.equivFun_apply, b.repr_self_apply]
 #align basis.equiv_fun_self Basis.equivFun_self
 
-theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) = c := by
-  ext j
-  simp only [map_sum, LinearEquiv.map_smul, repr_self, Finsupp.smul_single, smul_eq_mul, mul_one,
-    Finset.sum_apply']
-  rw [Finset.sum_eq_single j, Finsupp.single_eq_same]
-  · rintro i - hi
-    exact Finsupp.single_eq_of_ne hi
-  · intros
-    have := Finset.mem_univ j
-    contradiction
+theorem Basis.repr_sum_self [Fintype ι] (b : Basis ι R M) (c : ι → R) :
+    b.repr (∑ i, c i • b i) = c := by
+  simp_rw [← b.equivFun_symm_apply, ← b.equivFun_apply, b.equivFun.apply_symm_apply]
 #align basis.repr_sum_self Basis.repr_sum_self
 
 /-- Define a basis by mapping each vector `x : M` to its coordinates `e x : ι → R`,
 as long as `ι` is finite. -/
-def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
+def Basis.ofEquivFun [Finite ι] (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
   .ofRepr <| e.trans <| LinearEquiv.symm <| Finsupp.linearEquivFunOnFinite R R ι
 #align basis.of_equiv_fun Basis.ofEquivFun
 
 @[simp]
-theorem Basis.ofEquivFun_repr_apply (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
+theorem Basis.ofEquivFun_repr_apply [Finite ι] (e : M ≃ₗ[R] ι → R) (x : M) (i : ι) :
     (Basis.ofEquivFun e).repr x i = e x i :=
   rfl
 #align basis.of_equiv_fun_repr_apply Basis.ofEquivFun_repr_apply
 
 @[simp]
-theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
+theorem Basis.coe_ofEquivFun [Finite ι] [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
     (Basis.ofEquivFun e : ι → M) = fun i => e.symm (Function.update 0 i 1) :=
   funext fun i =>
     e.injective <|
@@ -974,16 +967,14 @@ theorem Basis.coe_ofEquivFun [DecidableEq ι] (e : M ≃ₗ[R] ι → R) :
 #align basis.coe_of_equiv_fun Basis.coe_ofEquivFun
 
 @[simp]
-theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivFun = v := by
-  classical
-    ext j
-    simp only [Basis.equivFun_symm_apply, Basis.coe_ofEquivFun]
-    simp_rw [Function.update_apply, ite_smul]
-    simp only [Finset.mem_univ, if_true, Pi.zero_apply, one_smul, Finset.sum_ite_eq', zero_smul]
+theorem Basis.ofEquivFun_equivFun [Finite ι] (v : Basis ι R M) :
+    Basis.ofEquivFun v.equivFun = v :=
+  Basis.repr_injective <| by ext; rfl
 #align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFun
 
 @[simp]
-theorem Basis.equivFun_ofEquivFun (e : M ≃ₗ[R] ι → R) : (Basis.ofEquivFun e).equivFun = e := by
+theorem Basis.equivFun_ofEquivFun [Finite ι] (e : M ≃ₗ[R] ι → R) :
+    (Basis.ofEquivFun e).equivFun = e := by
   ext j
   simp_rw [Basis.equivFun_apply, Basis.ofEquivFun_repr_apply]
 #align basis.equiv_fun_of_equiv_fun Basis.equivFun_ofEquivFun
@@ -993,21 +984,22 @@ variable (S : Type*) [Semiring S] [Module S M']
 variable [SMulCommClass R S M']
 
 @[simp]
-theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
+theorem Basis.constr_apply_fintype [Fintype ι] (b : Basis ι R M) (f : ι → M') (x : M) :
     (constr (M' := M') b S f : M → M') x = ∑ i, b.equivFun x i • f i := by
   simp [b.constr_apply, b.equivFun_apply, Finsupp.sum_fintype]
 #align basis.constr_apply_fintype Basis.constr_apply_fintype
 
 /-- If the submodule `P` has a finite basis,
 `x ∈ P` iff it is a linear combination of basis vectors. -/
-theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M} :
+theorem Basis.mem_submodule_iff' [Fintype ι] {P : Submodule R M} (b : Basis ι R P) {x : M} :
     x ∈ P ↔ ∃ c : ι → R, x = ∑ i, c i • (b i : M) :=
   b.mem_submodule_iff.trans <|
     Finsupp.equivFunOnFinite.exists_congr_left.trans <|
       exists_congr fun c => by simp [Finsupp.sum_fintype, Finsupp.equivFunOnFinite]
 #align basis.mem_submodule_iff' Basis.mem_submodule_iff'
 
-theorem Basis.coord_equivFun_symm (i : ι) (f : ι → R) : b.coord i (b.equivFun.symm f) = f i :=
+theorem Basis.coord_equivFun_symm [Finite ι] (b : Basis ι R M) (i : ι) (f : ι → R) :
+    b.coord i (b.equivFun.symm f) = f i :=
   b.coord_repr_symm i (Finsupp.equivFunOnFinite.symm f)
 #align basis.coord_equiv_fun_symm Basis.coord_equivFun_symm
 
chore: tidy various files (#9851)
Diff
@@ -1405,7 +1405,7 @@ lemma Basis.mem_center_iff {A}
           ∧ (b i * z) * b j = b i * (z * b j)
           ∧ (b i * b j) * z = b i * (b j * z) := by
   constructor
-  · intro h;
+  · intro h
     constructor
     · intro i
       apply (h.1 (b i)).symm
chore: reduce imports (#9830)

This uses the improved shake script from #9772 to reduce imports across mathlib. The corresponding noshake.json file has been added to #9772.

Co-authored-by: Mario Carneiro <di.gama@gmail.com>

Diff
@@ -5,6 +5,8 @@ Authors: Johannes Hölzl, Mario Carneiro, Alexander Bentkamp
 -/
 import Mathlib.LinearAlgebra.Basis
 import Mathlib.LinearAlgebra.FreeModule.Basic
+import Mathlib.LinearAlgebra.LinearPMap
+import Mathlib.LinearAlgebra.Projection
 
 #align_import linear_algebra.basis from "leanprover-community/mathlib"@"13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395"
 
chore: reduce imports (#9830)

This uses the improved shake script from #9772 to reduce imports across mathlib. The corresponding noshake.json file has been added to #9772.

Co-authored-by: Mario Carneiro <di.gama@gmail.com>

Diff
@@ -8,8 +8,6 @@ import Mathlib.Algebra.BigOperators.Finprod
 import Mathlib.Data.Fintype.BigOperators
 import Mathlib.LinearAlgebra.Finsupp
 import Mathlib.LinearAlgebra.LinearIndependent
-import Mathlib.LinearAlgebra.LinearPMap
-import Mathlib.LinearAlgebra.Projection
 import Mathlib.SetTheory.Cardinal.Cofinality
 
 #align_import linear_algebra.basis from "leanprover-community/mathlib"@"13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395"
refactor(*): abbreviation for non-dependent FunLike (#9833)

This follows up from #9785, which renamed FunLike to DFunLike, by introducing a new abbreviation FunLike F α β := DFunLike F α (fun _ => β), to make the non-dependent use of FunLike easier.

I searched for the pattern DFunLike.*fun and DFunLike.*λ in all files to replace expressions of the form DFunLike F α (fun _ => β) with FunLike F α β. I did this everywhere except for extends clauses for two reasons: it would conflict with #8386, and more importantly extends must directly refer to a structure with no unfolding of defs or abbrevs.

Diff
@@ -119,11 +119,11 @@ theorem repr_injective : Injective (repr : Basis ι R M → M ≃ₗ[R] ι →
 #align basis.repr_injective Basis.repr_injective
 
 /-- `b i` is the `i`th basis vector. -/
-instance instDFunLike : DFunLike (Basis ι R M) ι fun _ => M where
+instance instFunLike : FunLike (Basis ι R M) ι M where
   coe b i := b.repr.symm (Finsupp.single i 1)
   coe_injective' f g h := repr_injective <| LinearEquiv.symm_bijective.injective <|
     LinearEquiv.toLinearMap_injective <| by ext; exact congr_fun h _
-#align basis.fun_like Basis.instDFunLike
+#align basis.fun_like Basis.instFunLike
 
 @[simp]
 theorem coe_ofRepr (e : M ≃ₗ[R] ι →₀ R) : ⇑(ofRepr e) = fun i => e.symm (Finsupp.single i 1) :=
chore(*): rename FunLike to DFunLike (#9785)

This prepares for the introduction of a non-dependent synonym of FunLike, which helps a lot with keeping #8386 readable.

This is entirely search-and-replace in 680197f combined with manual fixes in 4145626, e900597 and b8428f8. The commands that generated this change:

sed -i 's/\bFunLike\b/DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoFunLike\b/toDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/import Mathlib.Data.DFunLike/import Mathlib.Data.FunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bHom_FunLike\b/Hom_DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean     
sed -i 's/\binstFunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bfunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoo many metavariables to apply `fun_like.has_coe_to_fun`/too many metavariables to apply `DFunLike.hasCoeToFun`/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean

Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>

Diff
@@ -84,7 +84,7 @@ variable (ι R M)
 
 /-- A `Basis ι R M` for a module `M` is the type of `ι`-indexed `R`-bases of `M`.
 
-The basis vectors are available as `FunLike.coe (b : Basis ι R M) : ι → M`.
+The basis vectors are available as `DFunLike.coe (b : Basis ι R M) : ι → M`.
 To turn a linear independent family of vectors spanning `M` into a basis, use `Basis.mk`.
 They are internally represented as linear equivs `M ≃ₗ[R] (ι →₀ R)`,
 available as `Basis.repr`.
@@ -119,11 +119,11 @@ theorem repr_injective : Injective (repr : Basis ι R M → M ≃ₗ[R] ι →
 #align basis.repr_injective Basis.repr_injective
 
 /-- `b i` is the `i`th basis vector. -/
-instance funLike : FunLike (Basis ι R M) ι fun _ => M where
+instance instDFunLike : DFunLike (Basis ι R M) ι fun _ => M where
   coe b i := b.repr.symm (Finsupp.single i 1)
   coe_injective' f g h := repr_injective <| LinearEquiv.symm_bijective.injective <|
     LinearEquiv.toLinearMap_injective <| by ext; exact congr_fun h _
-#align basis.fun_like Basis.funLike
+#align basis.fun_like Basis.instDFunLike
 
 @[simp]
 theorem coe_ofRepr (e : M ≃ₗ[R] ι →₀ R) : ⇑(ofRepr e) = fun i => e.symm (Finsupp.single i 1) :=
@@ -218,7 +218,7 @@ def coord : M →ₗ[R] R :=
 #align basis.coord Basis.coord
 
 theorem forall_coord_eq_zero_iff {x : M} : (∀ i, b.coord i x = 0) ↔ x = 0 :=
-  Iff.trans (by simp only [b.coord_apply, FunLike.ext_iff, Finsupp.zero_apply])
+  Iff.trans (by simp only [b.coord_apply, DFunLike.ext_iff, Finsupp.zero_apply])
     b.repr.map_eq_zero_iff
 #align basis.forall_coord_eq_zero_iff Basis.forall_coord_eq_zero_iff
 
@@ -289,7 +289,7 @@ theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b
 
 /-- Two elements are equal iff their coordinates are equal. -/
 theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
-  simp only [← FunLike.ext_iff, EmbeddingLike.apply_eq_iff_eq]
+  simp only [← DFunLike.ext_iff, EmbeddingLike.apply_eq_iff_eq]
 #align basis.ext_elem_iff Basis.ext_elem_iff
 
 alias ⟨_, _root_.Basis.ext_elem⟩ := ext_elem_iff
@@ -337,7 +337,7 @@ theorem eq_ofRepr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i
 /-- Two bases are equal if their basis vectors are the same. -/
 @[ext]
 theorem eq_of_apply_eq {b₁ b₂ : Basis ι R M} : (∀ i, b₁ i = b₂ i) → b₁ = b₂ :=
-  FunLike.ext _ _
+  DFunLike.ext _ _
 #align basis.eq_of_apply_eq Basis.eq_of_apply_eq
 
 end Ext
@@ -436,7 +436,7 @@ theorem repr_reindex_apply (i' : ι') : (b.reindex e).repr x i' = b.repr x (e.sy
 
 @[simp]
 theorem repr_reindex : (b.reindex e).repr x = (b.repr x).mapDomain e :=
-  FunLike.ext _ _ <| by simp [repr_reindex_apply]
+  DFunLike.ext _ _ <| by simp [repr_reindex_apply]
 #align basis.repr_reindex Basis.repr_reindex
 
 @[simp]
@@ -1470,7 +1470,7 @@ theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
   suffices
     Finsupp.mapRange.linearMap (Algebra.linearMap R S) ∘ₗ (b.restrictScalars R).repr.toLinearMap =
       ((b.repr : M →ₗ[S] ι →₀ S).restrictScalars R).domRestrict _
-    by exact FunLike.congr_fun (LinearMap.congr_fun this m) i
+    by exact DFunLike.congr_fun (LinearMap.congr_fun this m) i
   refine Basis.ext (b.restrictScalars R) fun _ => ?_
   simp only [LinearMap.coe_comp, LinearEquiv.coe_toLinearMap, Function.comp_apply, map_one,
     Basis.repr_self, Finsupp.mapRange.linearMap_apply, Finsupp.mapRange_single,
@@ -1601,7 +1601,7 @@ theorem union_support_maximal_linearIndependent_eq_range_basis {ι : Type w} (b
       apply_fun fun x => b.repr x b' at z
       simp only [repr_self, LinearEquiv.map_smul, mul_one, Finsupp.single_eq_same, Pi.neg_apply,
         Finsupp.smul_single', LinearEquiv.map_neg, Finsupp.coe_neg] at z
-      erw [FunLike.congr_fun (Finsupp.apply_total R (b.repr : M →ₗ[R] ι →₀ R) v l.some) b'] at z
+      erw [DFunLike.congr_fun (Finsupp.apply_total R (b.repr : M →ₗ[R] ι →₀ R) v l.some) b'] at z
       simpa [Finsupp.total_apply, w] using z
     -- Then all the other coefficients are zero, because `v` is linear independent.
     have l₁ : l.some = 0 := by
@@ -1610,7 +1610,7 @@ theorem union_support_maximal_linearIndependent_eq_range_basis {ι : Type w} (b
     -- Finally we put those facts together to show the linear combination is trivial.
     ext (_ | a)
     · simp only [l₀, Finsupp.coe_zero, Pi.zero_apply]
-    · erw [FunLike.congr_fun l₁ a]
+    · erw [DFunLike.congr_fun l₁ a]
       simp only [Finsupp.coe_zero, Pi.zero_apply]
   rw [LinearIndependent.Maximal] at m
   specialize m (range v') i' r
chore(*): use ∃ x ∈ s, p x instead of ∃ x (_ : x ∈ s), p x (#9326)

This is a follow-up to #9215. It changes the following theorems and definitions:

  • IsOpen.exists_subset_affineIndependent_span_eq_top
  • IsConformalMap
  • SimpleGraph.induce_connected_of_patches
  • Submonoid.exists_list_of_mem_closure
  • AddSubmonoid.exists_list_of_mem_closure
  • AffineSubspace.mem_affineSpan_insert_iff
  • AffineBasis.exists_affine_subbasis
  • exists_affineIndependent
  • LinearMap.mem_submoduleImage
  • Basis.basis_singleton_iff
  • atom_iff_nonzero_span
  • finrank_eq_one_iff'
  • Submodule.basis_of_pid_aux
  • exists_linearIndependent_extension
  • exists_linearIndependent
  • countable_cover_nhdsWithin_of_sigma_compact
  • mem_residual

Also deprecate ENNReal.exists_ne_top'.

Diff
@@ -180,7 +180,7 @@ theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodul
 /-- The atoms of the lattice of submodules of a module over a division ring are the
 submodules equal to the span of a nonzero element of the module. -/
 theorem atom_iff_nonzero_span (W : Submodule K V) :
-    IsAtom W ↔ ∃ (v : V) (_ : v ≠ 0), W = span K {v} := by
+    IsAtom W ↔ ∃ v ≠ 0, W = span K {v} := by
   refine' ⟨fun h => _, fun h => _⟩
   · cases' h with hbot h
     rcases (Submodule.ne_bot_iff W).1 hbot with ⟨v, ⟨hW, hv⟩⟩
chore(*): use ∃ x ∈ s, p x instead of ∃ x (_ : x ∈ s), p x (#9326)

This is a follow-up to #9215. It changes the following theorems and definitions:

  • IsOpen.exists_subset_affineIndependent_span_eq_top
  • IsConformalMap
  • SimpleGraph.induce_connected_of_patches
  • Submonoid.exists_list_of_mem_closure
  • AddSubmonoid.exists_list_of_mem_closure
  • AffineSubspace.mem_affineSpan_insert_iff
  • AffineBasis.exists_affine_subbasis
  • exists_affineIndependent
  • LinearMap.mem_submoduleImage
  • Basis.basis_singleton_iff
  • atom_iff_nonzero_span
  • finrank_eq_one_iff'
  • Submodule.basis_of_pid_aux
  • exists_linearIndependent_extension
  • exists_linearIndependent
  • countable_cover_nhdsWithin_of_sigma_compact
  • mem_residual

Also deprecate ENNReal.exists_ne_top'.

Diff
@@ -835,7 +835,7 @@ theorem singleton_repr (ι R : Type*) [Unique ι] [Semiring R] (x i) :
 
 theorem basis_singleton_iff {R M : Type*} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type*) [Unique ι] :
-    Nonempty (Basis ι R M) ↔ ∃ (x : _) (_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y := by
+    Nonempty (Basis ι R M) ↔ ∃ x ≠ 0, ∀ y : M, ∃ r : R, r • x = y := by
   constructor
   · rintro ⟨b⟩
     refine' ⟨b default, b.linearIndependent.ne_zero _, _⟩
chore: deduplicate LinearIndependent.set_finite_of_isNoetherian (#9300)

Also moved several lemmas into Mathlib/LinearAlgebra/Basis.lean.

Co-authored-by: Andrew Yang <36414270+erdOne@users.noreply.github.com>

Diff
@@ -10,6 +10,7 @@ import Mathlib.LinearAlgebra.Finsupp
 import Mathlib.LinearAlgebra.LinearIndependent
 import Mathlib.LinearAlgebra.LinearPMap
 import Mathlib.LinearAlgebra.Projection
+import Mathlib.SetTheory.Cardinal.Cofinality
 
 #align_import linear_algebra.basis from "leanprover-community/mathlib"@"13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395"
 
@@ -1492,3 +1493,154 @@ theorem Basis.mem_span_iff_repr_mem (m : M) :
 #align basis.mem_span_iff_repr_mem Basis.mem_span_iff_repr_mem
 
 end RestrictScalars
+
+section Finite
+
+open Basis Cardinal
+
+universe v v' v'' u₁' w w'
+
+variable {R : Type u} {M M₁ : Type v} {M' : Type v'} {ι : Type w}
+
+variable [Ring R] [AddCommGroup M] [AddCommGroup M'] [AddCommGroup M₁] [Nontrivial R]
+
+variable [Module R M] [Module R M'] [Module R M₁]
+
+-- One might hope that a finite spanning set implies that any linearly independent set is finite.
+-- While this is true over a division ring
+-- (simply because any linearly independent set can be extended to a basis),
+-- or more generally over a ring satisfying the strong rank condition
+-- (which covers all commutative rings; see `LinearIndependent.finite_of_le_span_finite`),
+-- this is not true in general.
+-- For example, the left ideal generated by the variables in a noncommutative polynomial ring
+-- (`FreeAlgebra R ι`) in infinitely many variables (indexed by `ι`) is free
+-- with an infinite basis (consisting of the variables).
+-- As another example, for any commutative ring R, the ring of column-finite matrices
+-- `Module.End R (ℕ →₀ R)` is isomorphic to `ℕ → Module.End R (ℕ →₀ R)` as a module over itself,
+-- which also clearly contains an infinite linearly independent set.
+/--
+Over any nontrivial ring, the existence of a finite spanning set implies that any basis is finite.
+-/
+lemma basis_finite_of_finite_spans (w : Set M) (hw : w.Finite) (s : span R w = ⊤) {ι : Type w}
+    (b : Basis ι R M) : Finite ι := by
+  classical
+  haveI := hw.to_subtype
+  cases nonempty_fintype w
+  -- We'll work by contradiction, assuming `ι` is infinite.
+  rw [← not_infinite_iff_finite]
+  intro i
+  -- Let `S` be the union of the supports of `x ∈ w` expressed as linear combinations of `b`.
+  -- This is a finite set since `w` is finite.
+  let S : Finset ι := Finset.univ.sup fun x : w => (b.repr x).support
+  let bS : Set M := b '' S
+  have h : ∀ x ∈ w, x ∈ span R bS := by
+    intro x m
+    rw [← b.total_repr x, Finsupp.span_image_eq_map_total, Submodule.mem_map]
+    use b.repr x
+    simp only [and_true_iff, eq_self_iff_true, Finsupp.mem_supported]
+    change (b.repr x).support ≤ S
+    convert Finset.le_sup (α := Finset ι) (by simp : (⟨x, m⟩ : w) ∈ Finset.univ)
+    rfl
+  -- Thus this finite subset of the basis elements spans the entire module.
+  have k : span R bS = ⊤ := eq_top_iff.2 (le_trans s.ge (span_le.2 h))
+  -- Now there is some `x : ι` not in `S`, since `ι` is infinite.
+  obtain ⟨x, nm⟩ := Infinite.exists_not_mem_finset S
+  -- However it must be in the span of the finite subset,
+  have k' : b x ∈ span R bS := by
+    rw [k]
+    exact mem_top
+  -- giving the desire contradiction.
+  exact b.linearIndependent.not_mem_span_image nm k'
+#align basis_fintype_of_finite_spans basis_finite_of_finite_spansₓ
+
+-- From [Les familles libres maximales d'un module ont-elles le meme cardinal?][lazarus1973]
+/-- Over any ring `R`, if `b` is a basis for a module `M`,
+and `s` is a maximal linearly independent set,
+then the union of the supports of `x ∈ s` (when written out in the basis `b`) is all of `b`.
+-/
+theorem union_support_maximal_linearIndependent_eq_range_basis {ι : Type w} (b : Basis ι R M)
+    {κ : Type w'} (v : κ → M) (i : LinearIndependent R v) (m : i.Maximal) :
+    ⋃ k, ((b.repr (v k)).support : Set ι) = Set.univ := by
+  -- If that's not the case,
+  by_contra h
+  simp only [← Ne.def, ne_univ_iff_exists_not_mem, mem_iUnion, not_exists_not,
+    Finsupp.mem_support_iff, Finset.mem_coe] at h
+  -- We have some basis element `b b'` which is not in the support of any of the `v i`.
+  obtain ⟨b', w⟩ := h
+  -- Using this, we'll construct a linearly independent family strictly larger than `v`,
+  -- by also using this `b b'`.
+  let v' : Option κ → M := fun o => o.elim (b b') v
+  have r : range v ⊆ range v' := by
+    rintro - ⟨k, rfl⟩
+    use some k
+    rfl
+  have r' : b b' ∉ range v := by
+    rintro ⟨k, p⟩
+    simpa [w] using congr_arg (fun m => (b.repr m) b') p
+  have r'' : range v ≠ range v' := by
+    intro e
+    have p : b b' ∈ range v' := by
+      use none
+      rfl
+    rw [← e] at p
+    exact r' p
+  -- The key step in the proof is checking that this strictly larger family is linearly independent.
+  have i' : LinearIndependent R ((↑) : range v' → M) := by
+    apply LinearIndependent.to_subtype_range
+    rw [linearIndependent_iff]
+    intro l z
+    rw [Finsupp.total_option] at z
+    simp only [Option.elim'] at z
+    change _ + Finsupp.total κ M R v l.some = 0 at z
+    -- We have some linear combination of `b b'` and the `v i`, which we want to show is trivial.
+    -- We'll first show the coefficient of `b b'` is zero,
+    -- by expressing the `v i` in the basis `b`, and using that the `v i` have no `b b'` term.
+    have l₀ : l none = 0 := by
+      rw [← eq_neg_iff_add_eq_zero] at z
+      replace z := neg_eq_iff_eq_neg.mpr z
+      apply_fun fun x => b.repr x b' at z
+      simp only [repr_self, LinearEquiv.map_smul, mul_one, Finsupp.single_eq_same, Pi.neg_apply,
+        Finsupp.smul_single', LinearEquiv.map_neg, Finsupp.coe_neg] at z
+      erw [FunLike.congr_fun (Finsupp.apply_total R (b.repr : M →ₗ[R] ι →₀ R) v l.some) b'] at z
+      simpa [Finsupp.total_apply, w] using z
+    -- Then all the other coefficients are zero, because `v` is linear independent.
+    have l₁ : l.some = 0 := by
+      rw [l₀, zero_smul, zero_add] at z
+      exact linearIndependent_iff.mp i _ z
+    -- Finally we put those facts together to show the linear combination is trivial.
+    ext (_ | a)
+    · simp only [l₀, Finsupp.coe_zero, Pi.zero_apply]
+    · erw [FunLike.congr_fun l₁ a]
+      simp only [Finsupp.coe_zero, Pi.zero_apply]
+  rw [LinearIndependent.Maximal] at m
+  specialize m (range v') i' r
+  exact r'' m
+#align union_support_maximal_linear_independent_eq_range_basis union_support_maximal_linearIndependent_eq_range_basis
+
+/-- Over any ring `R`, if `b` is an infinite basis for a module `M`,
+and `s` is a maximal linearly independent set,
+then the cardinality of `b` is bounded by the cardinality of `s`.
+-/
+theorem infinite_basis_le_maximal_linearIndependent' {ι : Type w} (b : Basis ι R M) [Infinite ι]
+    {κ : Type w'} (v : κ → M) (i : LinearIndependent R v) (m : i.Maximal) :
+    Cardinal.lift.{w'} #ι ≤ Cardinal.lift.{w} #κ := by
+  let Φ := fun k : κ => (b.repr (v k)).support
+  have w₁ : #ι ≤ #(Set.range Φ) := by
+    apply Cardinal.le_range_of_union_finset_eq_top
+    exact union_support_maximal_linearIndependent_eq_range_basis b v i m
+  have w₂ : Cardinal.lift.{w'} #(Set.range Φ) ≤ Cardinal.lift.{w} #κ := Cardinal.mk_range_le_lift
+  exact (Cardinal.lift_le.mpr w₁).trans w₂
+#align infinite_basis_le_maximal_linear_independent' infinite_basis_le_maximal_linearIndependent'
+
+-- (See `infinite_basis_le_maximal_linearIndependent'` for the more general version
+-- where the index types can live in different universes.)
+/-- Over any ring `R`, if `b` is an infinite basis for a module `M`,
+and `s` is a maximal linearly independent set,
+then the cardinality of `b` is bounded by the cardinality of `s`.
+-/
+theorem infinite_basis_le_maximal_linearIndependent {ι : Type w} (b : Basis ι R M) [Infinite ι]
+    {κ : Type w} (v : κ → M) (i : LinearIndependent R v) (m : i.Maximal) : #ι ≤ #κ :=
+  Cardinal.lift_le.mp (infinite_basis_le_maximal_linearIndependent' b v i m)
+#align infinite_basis_le_maximal_linear_independent infinite_basis_le_maximal_linearIndependent
+
+end Finite
chore: remove uses of cases' (#9171)

I literally went through and regex'd some uses of cases', replacing them with rcases; this is meant to be a low effort PR as I hope that tools can do this in the future.

rcases is an easier replacement than cases, though with better tools we could in future do a second pass converting simple rcases added here (and existing ones) to cases.

Diff
@@ -1162,7 +1162,7 @@ theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).coord i
 `j`th element of the basis. -/
 theorem mk_coord_apply [DecidableEq ι] {i j : ι} :
     (Basis.mk hli hsp).coord i (v j) = if j = i then 1 else 0 := by
-  cases' eq_or_ne j i with h h
+  rcases eq_or_ne j i with h | h
   · simp only [h, if_true, eq_self_iff_true, mk_coord_apply_eq i]
   · simp only [h, if_false, mk_coord_apply_ne h]
 #align basis.mk_coord_apply Basis.mk_coord_apply
chore(Order/Filter): protect Filter.map_smul (#8935)

We use SMulHomClass.map_smul much more often, even when the Filter namespace is opened.

Diff
@@ -1257,7 +1257,7 @@ theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     · congr
       simp [Basis.unitsSMul, ← mul_smul]
     simp only [Basis.coord_apply, LinearMap.smul_apply, Basis.repr_self, Units.smul_def,
-      SMulHomClass.map_smul, Finsupp.single_apply]
+      map_smul, Finsupp.single_apply]
     split_ifs with h <;> simp [h]
 #align basis.coord_units_smul Basis.coord_unitsSMul
 
refactor: replace some [@foo](https://github.com/foo) _ _ _ _ _ ... by named arguments (#8702)

Using Lean4's named arguments, we manage to remove a few hard-to-read explicit function calls [@foo](https://github.com/foo) _ _ _ _ _ ... which used to be necessary in Lean3.

Occasionally, this results in slightly longer code. The benefit of named arguments is readability, as well as to reduce the brittleness of the code when the argument order is changed.

Co-authored-by: Michael Rothgang <rothgami@math.hu-berlin.de>

Diff
@@ -211,7 +211,7 @@ theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj :
   have hB₀ : _ := hB.linearIndependent.to_subtype_range
   have : LinearIndependent K (fun x => x : f '' B → V') := by
     have h₁ : LinearIndependent K ((↑) : ↥(f '' Set.range (Basis.ofVectorSpace K V)) → V') :=
-      @LinearIndependent.image_subtype _ _ _ _ _ _ _ _ _ f hB₀ (show Disjoint _ _ by simp [hf_inj])
+      LinearIndependent.image_subtype (f := f) hB₀ (show Disjoint _ _ by simp [hf_inj])
     rwa [Basis.range_ofVectorSpace K V] at h₁
   let C := this.extend (subset_univ _)
   have BC := this.subset_extend (subset_univ _)
refactor: rename Submodule.ofLe to Submodule.inclusion (#8470)

This matches Set.inclusion, Subring.inclusion, Subalgebra.inclusion, etc.

Also renames the homOfLe spellings in Algebra/Lie to match.

Note that we leave LieSubalgebra.ofLe, as this is a completely different statement!

As requested by @alreadydone.

Diff
@@ -1324,7 +1324,7 @@ theorem coe_mkFinConsOfLE {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
     (hNO : N ≤ O) (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0)
     (hsp : ∀ z ∈ O, ∃ c : R, z + c • y ∈ N) :
     (mkFinConsOfLE y yO b hNO hli hsp : Fin (n + 1) → O) =
-      Fin.cons ⟨y, yO⟩ (Submodule.ofLe hNO ∘ b) :=
+      Fin.cons ⟨y, yO⟩ (Submodule.inclusion hNO ∘ b) :=
   coe_mkFinCons _ _ _ _
 #align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLE
 
style: cleanup by putting by on the same line as := (#8407)

Co-authored-by: Eric Wieser <wieser.eric@gmail.com>

Diff
@@ -259,8 +259,9 @@ theorem dvd_coord_smul (i : ι) (m : M) (r : R) : r ∣ b.coord i (r • m) :=
   ⟨b.coord i m, by simp⟩
 #align basis.dvd_coord_smul Basis.dvd_coord_smul
 
-theorem coord_repr_symm (b : Basis ι R M) (i : ι) (f : ι →₀ R) : b.coord i (b.repr.symm f) = f i :=
-  by simp only [repr_symm_apply, coord_apply, repr_total]
+theorem coord_repr_symm (b : Basis ι R M) (i : ι) (f : ι →₀ R) :
+    b.coord i (b.repr.symm f) = f i := by
+  simp only [repr_symm_apply, coord_apply, repr_total]
 #align basis.coord_repr_symm Basis.coord_repr_symm
 
 end Coord
refactor(Algebra): Define the center appropriately for non-associative algebras (#6996)

For a sensible theory, we require that the centre of an algebra is closed under multiplication. The definition currently in Mathlib works for associative algebras, but not non-associative algebras. This PR uses the definition from Cabrera García and Rodríguez Palacios, which works for any multiplication (addition) and which coincides with the current definition in the associative case.

I did consider whether the centralizer should also be re-defined in terms of operator commutation, but this still results in a centralizer which is not closed under multiplication in the non-associative case. I have therefore retained the current definition, but changed centralizer_eq_top_iff_subset and centralizer_univ to only work in the associative case.

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Christopher Hoskin <mans0954@users.noreply.github.com> Co-authored-by: Christopher Hoskin <christopher.hoskin@overleaf.com>

Diff
@@ -1397,14 +1397,47 @@ end Induction
 with the basis elements. -/
 lemma Basis.mem_center_iff {A}
     [Semiring R] [NonUnitalNonAssocSemiring A]
-    [Module R A] [SMulCommClass R A A] [IsScalarTower R A A]
-    (b : Basis ι R A) {x : A} :
-    x ∈ Set.center A ↔ ∀ i, Commute (b i) x := by
+    [Module R A] [SMulCommClass R A A] [SMulCommClass R R A] [IsScalarTower R A A]
+    (b : Basis ι R A) {z : A} :
+    z ∈ Set.center A ↔
+      (∀ i, Commute (b i) z) ∧ ∀ i j,
+        z * (b i * b j) = (z * b i) * b j
+          ∧ (b i * z) * b j = b i * (z * b j)
+          ∧ (b i * b j) * z = b i * (b j * z) := by
   constructor
-  · intro h i; apply h
-  · intro h y
-    rw [← b.total_repr y, Finsupp.total_apply, Finsupp.sum, Finset.sum_mul, Finset.mul_sum]
-    simp_rw [mul_smul_comm, smul_mul_assoc, (h _).eq]
+  · intro h;
+    constructor
+    · intro i
+      apply (h.1 (b i)).symm
+    · intros
+      exact ⟨h.2 _ _, ⟨h.3 _ _, h.4 _ _⟩⟩
+  · intro h
+    rw [center, mem_setOf_eq]
+    constructor
+    case comm =>
+      intro y
+      rw [← b.total_repr y, Finsupp.total_apply, Finsupp.sum, Finset.sum_mul, Finset.mul_sum]
+      simp_rw [mul_smul_comm, smul_mul_assoc, (h.1 _).eq]
+    case left_assoc =>
+      intro c d
+      rw [← b.total_repr c, ← b.total_repr d, Finsupp.total_apply, Finsupp.total_apply, Finsupp.sum,
+        Finsupp.sum, Finset.sum_mul, Finset.mul_sum, Finset.mul_sum, Finset.mul_sum]
+      simp_rw [smul_mul_assoc, Finset.mul_sum, Finset.sum_mul, mul_smul_comm, Finset.mul_sum,
+        Finset.smul_sum, smul_mul_assoc, mul_smul_comm, (h.2 _ _).1,
+        (@SMulCommClass.smul_comm R R A)]
+      rw [Finset.sum_comm]
+    case mid_assoc =>
+      intro c d
+      rw [← b.total_repr c, ← b.total_repr d, Finsupp.total_apply, Finsupp.total_apply, Finsupp.sum,
+        Finsupp.sum, Finset.sum_mul, Finset.mul_sum, Finset.mul_sum, Finset.mul_sum]
+      simp_rw [smul_mul_assoc, Finset.sum_mul, mul_smul_comm, smul_mul_assoc, (h.2 _ _).2.1]
+    case right_assoc =>
+      intro c d
+      rw [← b.total_repr c, ← b.total_repr d, Finsupp.total_apply, Finsupp.total_apply, Finsupp.sum,
+        Finsupp.sum, Finset.sum_mul]
+      simp_rw [smul_mul_assoc, Finset.mul_sum, Finset.sum_mul, mul_smul_comm, Finset.mul_sum,
+        Finset.smul_sum, smul_mul_assoc, mul_smul_comm, Finset.sum_mul, smul_mul_assoc,
+        (h.2 _ _).2.2]
 
 section RestrictScalars
 
fix: attribute [simp] ... in -> attribute [local simp] ... in (#7678)

Mathlib.Logic.Unique contains the line attribute [simp] eq_iff_true_of_subsingleton in ...:

https://github.com/leanprover-community/mathlib4/blob/96a11c7aac574c00370c2b3dab483cb676405c5d/Mathlib/Logic/Unique.lean#L255-L256

Despite what the in part may imply, this adds the lemma to the simp set "globally", including for downstream files; it is likely that attribute [local simp] eq_iff_true_of_subsingleton in ... was meant instead (or maybe scoped simp, but I think "scoped" refers to the current namespace). Indeed, the relevant lemma is not marked with @[simp] for possible slowness: https://github.com/leanprover/std4/blob/846e9e1d6bb534774d1acd2dc430e70987da3c18/Std/Logic.lean#L749. Adding it to the simp set causes the example at https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Regression.20in.20simp to slow down.

This PR changes this and fixes the relevant downstream simps. There was also one ocurrence of attribute [simp] FullSubcategory.comp_def FullSubcategory.id_def in in Mathlib.CategoryTheory.Monoidal.Subcategory but that was much easier to fix.

https://github.com/leanprover-community/mathlib4/blob/bc49eb9ba756a233370b4b68bcdedd60402f71ed/Mathlib/CategoryTheory/Monoidal/Subcategory.lean#L118-L119

Diff
@@ -472,7 +472,7 @@ theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange
       Subtype.coe_mk]
   · letI : Subsingleton R := not_nontrivial_iff_subsingleton.mp htr
     letI := Module.subsingleton R M
-    simp [reindexRange]
+    simp [reindexRange, eq_iff_true_of_subsingleton]
 #align basis.reindex_range_self Basis.reindexRange_self
 
 theorem reindexRange_repr_self (i : ι) :
feat(LinearAlgebra/Basis): commuting with basis elements places an element in the center (#7833)
Diff
@@ -1393,6 +1393,19 @@ def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort*
 
 end Induction
 
+/-- An element of a non-unital-non-associative algebra is in the center exactly when it commutes
+with the basis elements. -/
+lemma Basis.mem_center_iff {A}
+    [Semiring R] [NonUnitalNonAssocSemiring A]
+    [Module R A] [SMulCommClass R A A] [IsScalarTower R A A]
+    (b : Basis ι R A) {x : A} :
+    x ∈ Set.center A ↔ ∀ i, Commute (b i) x := by
+  constructor
+  · intro h i; apply h
+  · intro h y
+    rw [← b.total_repr y, Finsupp.total_apply, Finsupp.sum, Finset.sum_mul, Finset.mul_sum]
+    simp_rw [mul_smul_comm, smul_mul_assoc, (h _).eq]
+
 section RestrictScalars
 
 variable {S : Type*} [CommRing R] [Ring S] [Nontrivial S] [AddCommGroup M]
chore: missing spaces after rcases, convert and congrm (#7725)

Replace rcases( with rcases (. Same thing for convert( and congrm(. No other change.

Diff
@@ -183,7 +183,7 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
     IsAtom W ↔ ∃ (v : V) (_ : v ≠ 0), W = span K {v} := by
   refine' ⟨fun h => _, fun h => _⟩
   · cases' h with hbot h
-    rcases(Submodule.ne_bot_iff W).1 hbot with ⟨v, ⟨hW, hv⟩⟩
+    rcases (Submodule.ne_bot_iff W).1 hbot with ⟨v, ⟨hW, hv⟩⟩
     refine' ⟨v, ⟨hv, _⟩⟩
     by_contra heq
     specialize h (span K {v})
@@ -261,7 +261,7 @@ open Submodule LinearMap
 theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
     ∃ (f : V →ₗ[K] K), f ≠ 0 ∧ p ≤ ker f := by
   rcases SetLike.exists_of_lt hp with ⟨v, -, hpv⟩; clear hp
-  rcases(LinearPMap.supSpanSingleton ⟨p, 0⟩ v (1 : K) hpv).toFun.exists_extend with ⟨f, hf⟩
+  rcases (LinearPMap.supSpanSingleton ⟨p, 0⟩ v (1 : K) hpv).toFun.exists_extend with ⟨f, hf⟩
   refine' ⟨f, _, _⟩
   · rintro rfl
     rw [LinearMap.zero_comp] at hf
chore: tidy various files (#7359)
Diff
@@ -157,9 +157,8 @@ theorem repr_self_apply (j) [Decidable (i = j)] : b.repr (b i) j = if i = j then
 theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
   calc
     b.repr.symm v = b.repr.symm (v.sum Finsupp.single) := by simp
-    _ = ∑ i in v.support, b.repr.symm (Finsupp.single i (v i)) :=
-      by rw [Finsupp.sum, map_sum]
-    _ = Finsupp.total ι M R b v := by simp [repr_symm_single, Finsupp.total_apply, Finsupp.sum]
+    _ = v.sum fun i vi => b.repr.symm (Finsupp.single i vi) := map_finsupp_sum ..
+    _ = Finsupp.total ι M R b v := by simp only [repr_symm_single, Finsupp.total_apply]
 #align basis.repr_symm_apply Basis.repr_symm_apply
 
 @[simp]
chore: drop redundant LinearMap/LinearEquiv.map_sum (#7426)

Note that _root_.map_sum is not marked as @[simp].

Diff
@@ -158,7 +158,7 @@ theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
   calc
     b.repr.symm v = b.repr.symm (v.sum Finsupp.single) := by simp
     _ = ∑ i in v.support, b.repr.symm (Finsupp.single i (v i)) :=
-      by rw [Finsupp.sum, LinearEquiv.map_sum]
+      by rw [Finsupp.sum, map_sum]
     _ = Finsupp.total ι M R b v := by simp [repr_symm_single, Finsupp.total_apply, Finsupp.sum]
 #align basis.repr_symm_apply Basis.repr_symm_apply
 
feat: Hom(N, M) is Noetherian when M is Noetherian and N is finitely-generated. (#7276)

Co-authored-by: Junyan Xu <junyanxu.math@gmail.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com>

Diff
@@ -649,7 +649,7 @@ theorem constr_self (f : M →ₗ[R] M') : (constr (M' := M') b S fun i => f (b
   b.constr_eq S fun _ => rfl
 #align basis.constr_self Basis.constr_self
 
-theorem constr_range [Nonempty ι] {f : ι → M'} :
+theorem constr_range {f : ι → M'} :
     LinearMap.range (constr (M' := M') b S f) = span R (range f) := by
   rw [b.constr_def S f, LinearMap.range_comp, LinearMap.range_comp, LinearEquiv.range, ←
     Finsupp.supported_univ, Finsupp.lmapDomain_supported, ← Set.image_univ, ←
chore: use _root_.map_sum more consistently (#7189)

Also _root_.map_smul when in the neighbourhood.

Diff
@@ -276,14 +276,14 @@ variable {M₁ : Type*} [AddCommMonoid M₁] [Module R₁ M₁]
 theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ := by
   ext x
   rw [← b.total_repr x, Finsupp.total_apply, Finsupp.sum]
-  simp only [LinearMap.map_sum, LinearMap.map_smulₛₗ, h]
+  simp only [map_sum, LinearMap.map_smulₛₗ, h]
 #align basis.ext Basis.ext
 
 /-- Two linear equivs are equal if they are equal on basis vectors. -/
 theorem ext' {f₁ f₂ : M ≃ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ := by
   ext x
   rw [← b.total_repr x, Finsupp.total_apply, Finsupp.sum]
-  simp only [LinearEquiv.map_sum, LinearEquiv.map_smulₛₗ, h]
+  simp only [map_sum, LinearEquiv.map_smulₛₗ, h]
 #align basis.ext' Basis.ext'
 
 /-- Two elements are equal iff their coordinates are equal. -/
@@ -1065,7 +1065,7 @@ theorem equiv'_symm_apply (f : M → M') (g : M' → M) (hf hg hgf hfg) (i : ι'
 theorem sum_repr_mul_repr {ι'} [Fintype ι'] (b' : Basis ι' R M) (x : M) (i : ι) :
     (∑ j : ι', b.repr (b' j) i * b'.repr x j) = b.repr x i := by
   conv_rhs => rw [← b'.sum_repr x]
-  simp_rw [LinearEquiv.map_sum, LinearEquiv.map_smul, Finset.sum_apply']
+  simp_rw [map_sum, map_smul, Finset.sum_apply']
   refine' Finset.sum_congr rfl fun j _ => _
   rw [Finsupp.smul_apply, smul_eq_mul, mul_comm]
 #align basis.sum_repr_mul_repr Basis.sum_repr_mul_repr
feat: add some lemmas for Haar measures (#7034)

We prove some lemmas that will be useful in following PRs #6832 and #7037, mainly:

theorem Basis.addHaar_eq {b : Basis ι ℝ E} {b' : Basis ι' ℝ E} :
     b.addHaar = b'.addHaar ↔ b.addHaar b'.parallelepiped = 1

theorem Basis.parallelepiped_eq_map (b : Basis ι ℝ E) :
     b.parallelepiped = (TopologicalSpace.PositiveCompacts.piIcc01 ι).map b.equivFun.symm
       b.equivFunL.symm.continuous

theorem Basis.addHaar_map (b : Basis ι ℝ E) (f : E ≃L[ℝ] F) :
    map f b.addHaar = (b.map f.toLinearEquiv).addHaar

Co-authored-by: Eric Wieser <wieser.eric@gmail.com>

Diff
@@ -356,6 +356,9 @@ theorem map_apply (i) : b.map f i = f (b i) :=
   rfl
 #align basis.map_apply Basis.map_apply
 
+theorem coe_map : (b.map f : ι → M') = f ∘ b :=
+  rfl
+
 end Map
 
 section MapCoeffs
doc: cleanup documentation on Basis.constr (#7007)

Currently, the documentation in the file-level docstring is just wrong.

Diff
@@ -35,7 +35,7 @@ vector space and `ι : Type*` is an arbitrary indexing type.
   (saving you from having to work with `Finsupp`). The converse, turning this isomorphism into
   a basis, is called `Basis.ofEquivFun`.
 
-* `Basis.constr hv f` constructs a linear map `M₁ →ₗ[R] M₂` given the values `f : ι → M₂` at the
+* `Basis.constr b R f` constructs a linear map `M₁ →ₗ[R] M₂` given the values `f : ι → M₂` at the
   basis elements `⇑b : ι → M₁`.
 * `Basis.reindex` uses an equiv to map a basis to a different indexing set.
 * `Basis.map` uses a linear equiv to map a basis to a different module.
@@ -594,7 +594,9 @@ variable (S : Type*) [Semiring S] [Module S M']
 
 variable [SMulCommClass R S M']
 
-/-- Construct a linear map given the value at the basis.
+/-- Construct a linear map given the value at the basis, called `Basis.constr b S f` where `b` is
+a basis, `f` is the value of the linear map over the elements of the basis, and `S` is an
+extra semiring (typically `S = R` or `S = ℕ`).
 
 This definition is parameterized over an extra `Semiring S`,
 such that `SMulCommClass R S M'` holds.
feat: patch for new alias command (#6172)
Diff
@@ -291,7 +291,7 @@ theorem ext_elem_iff {x y : M} : x = y ↔ ∀ i, b.repr x i = b.repr y i := by
   simp only [← FunLike.ext_iff, EmbeddingLike.apply_eq_iff_eq]
 #align basis.ext_elem_iff Basis.ext_elem_iff
 
-alias ext_elem_iff ↔ _ _root_.Basis.ext_elem
+alias ⟨_, _root_.Basis.ext_elem⟩ := ext_elem_iff
 #align basis.ext_elem Basis.ext_elem
 
 theorem repr_eq_iff {b : Basis ι R M} {f : M →ₗ[R] ι →₀ R} :
feat(LinearAlgebra/Basis): add lemmas/golf (#6460)
  • Add Basis.mem_span_image, Basis.self_mem_span_image.
  • Golf some proofs.
  • Add @[simp] to Basis.span_eq.
Diff
@@ -120,13 +120,8 @@ theorem repr_injective : Injective (repr : Basis ι R M → M ≃ₗ[R] ι →
 /-- `b i` is the `i`th basis vector. -/
 instance funLike : FunLike (Basis ι R M) ι fun _ => M where
   coe b i := b.repr.symm (Finsupp.single i 1)
-  coe_injective' f g h := repr_injective <| LinearEquiv.symm_bijective.injective <| by
-    ext x
-    rw [← Finsupp.sum_single x, map_finsupp_sum, map_finsupp_sum]
-    congr with (i r)
-    have := congr_fun h i
-    dsimp at this
-    rw [← mul_one r, ← Finsupp.smul_single', LinearEquiv.map_smul, LinearEquiv.map_smul, this]
+  coe_injective' f g h := repr_injective <| LinearEquiv.symm_bijective.injective <|
+    LinearEquiv.toLinearMap_injective <| by ext; exact congr_fun h _
 #align basis.fun_like Basis.funLike
 
 @[simp]
@@ -188,17 +183,25 @@ theorem repr_range : LinearMap.range (b.repr : M →ₗ[R] ι →₀ R) = Finsup
   rw [LinearEquiv.range, Finsupp.supported_univ]
 #align basis.repr_range Basis.repr_range
 
-theorem mem_span_repr_support {ι : Type*} (b : Basis ι R M) (m : M) :
-    m ∈ span R (b '' (b.repr m).support) :=
+theorem mem_span_repr_support (m : M) : m ∈ span R (b '' (b.repr m).support) :=
   (Finsupp.mem_span_image_iff_total _).2 ⟨b.repr m, by simp [Finsupp.mem_supported_support]⟩
 #align basis.mem_span_repr_support Basis.mem_span_repr_support
 
-theorem repr_support_subset_of_mem_span {ι : Type*} (b : Basis ι R M) (s : Set ι) {m : M}
+theorem repr_support_subset_of_mem_span (s : Set ι) {m : M}
     (hm : m ∈ span R (b '' s)) : ↑(b.repr m).support ⊆ s := by
-  rcases(Finsupp.mem_span_image_iff_total _).1 hm with ⟨l, hl, hlm⟩
-  rwa [← hlm, repr_total, ← Finsupp.mem_supported R l]
+  rcases (Finsupp.mem_span_image_iff_total _).1 hm with ⟨l, hl, rfl⟩
+  rwa [repr_total, ← Finsupp.mem_supported R l]
 #align basis.repr_support_subset_of_mem_span Basis.repr_support_subset_of_mem_span
 
+theorem mem_span_image {m : M} {s : Set ι} : m ∈ span R (b '' s) ↔ ↑(b.repr m).support ⊆ s :=
+  ⟨repr_support_subset_of_mem_span _ _, fun h ↦
+    span_mono (image_subset _ h) (mem_span_repr_support b _)⟩
+
+@[simp]
+theorem self_mem_span_image [Nontrivial R] {i : ι} {s : Set ι} :
+    b i ∈ span R (b '' s) ↔ i ∈ s := by
+  simp [mem_span_image, Finsupp.support_single_ne_zero]
+
 end repr
 
 section Coord
@@ -561,11 +564,11 @@ protected theorem ne_zero [Nontrivial R] (i) : b i ≠ 0 :=
   b.linearIndependent.ne_zero i
 #align basis.ne_zero Basis.ne_zero
 
-protected theorem mem_span (x : M) : x ∈ span R (range b) := by
-  rw [← b.total_repr x, Finsupp.total_apply, Finsupp.sum]
-  exact Submodule.sum_mem _ fun i _ => Submodule.smul_mem _ _ (Submodule.subset_span ⟨i, rfl⟩)
+protected theorem mem_span (x : M) : x ∈ span R (range b) :=
+  span_mono (image_subset_range _ _) (mem_span_repr_support b x)
 #align basis.mem_span Basis.mem_span
 
+@[simp]
 protected theorem span_eq : span R (range b) = ⊤ :=
   eq_top_iff.mpr fun x _ => b.mem_span x
 #align basis.span_eq Basis.span_eq
chore: banish Type _ and Sort _ (#6499)

We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.

This has nice performance benefits.

Diff
@@ -33,7 +33,7 @@ open Function Set Submodule
 open BigOperators
 
 set_option autoImplicit false
-variable {ι : Type _} {ι' : Type _} {K : Type _} {V : Type _} {V' : Type _}
+variable {ι : Type*} {ι' : Type*} {K : Type*} {V : Type*} {V' : Type*}
 
 section DivisionRing
 
chore: banish Type _ and Sort _ (#6499)

We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.

This has nice performance benefits.

Diff
@@ -23,7 +23,7 @@ It is inspired by Isabelle/HOL's linear algebra, and hence indirectly by HOL Lig
 ## Main definitions
 
 All definitions are given for families of vectors, i.e. `v : ι → M` where `M` is the module or
-vector space and `ι : Type _` is an arbitrary indexing type.
+vector space and `ι : Type*` is an arbitrary indexing type.
 
 * `Basis ι R M` is the type of `ι`-indexed `R`-bases for a module `M`,
   represented by a linear equiv `M ≃ₗ[R] ι →₀ R`.
@@ -69,8 +69,8 @@ open Function Set Submodule
 
 open BigOperators
 
-variable {ι : Type _} {ι' : Type _} {R : Type _} {R₂ : Type _} {K : Type _}
-variable {M : Type _} {M' M'' : Type _} {V : Type u} {V' : Type _}
+variable {ι : Type*} {ι' : Type*} {R : Type*} {R₂ : Type*} {K : Type*}
+variable {M : Type*} {M' M'' : Type*} {V : Type u} {V' : Type*}
 
 section Module
 
@@ -188,12 +188,12 @@ theorem repr_range : LinearMap.range (b.repr : M →ₗ[R] ι →₀ R) = Finsup
   rw [LinearEquiv.range, Finsupp.supported_univ]
 #align basis.repr_range Basis.repr_range
 
-theorem mem_span_repr_support {ι : Type _} (b : Basis ι R M) (m : M) :
+theorem mem_span_repr_support {ι : Type*} (b : Basis ι R M) (m : M) :
     m ∈ span R (b '' (b.repr m).support) :=
   (Finsupp.mem_span_image_iff_total _).2 ⟨b.repr m, by simp [Finsupp.mem_supported_support]⟩
 #align basis.mem_span_repr_support Basis.mem_span_repr_support
 
-theorem repr_support_subset_of_mem_span {ι : Type _} (b : Basis ι R M) (s : Set ι) {m : M}
+theorem repr_support_subset_of_mem_span {ι : Type*} (b : Basis ι R M) (s : Set ι) {m : M}
     (hm : m ∈ span R (b '' s)) : ↑(b.repr m).support ⊆ s := by
   rcases(Finsupp.mem_span_image_iff_total _).1 hm with ⟨l, hl, hlm⟩
   rwa [← hlm, repr_total, ← Finsupp.mem_supported R l]
@@ -265,9 +265,9 @@ end Coord
 
 section Ext
 
-variable {R₁ : Type _} [Semiring R₁] {σ : R →+* R₁} {σ' : R₁ →+* R}
+variable {R₁ : Type*} [Semiring R₁] {σ : R →+* R₁} {σ' : R₁ →+* R}
 variable [RingHomInvPair σ σ'] [RingHomInvPair σ' σ]
-variable {M₁ : Type _} [AddCommMonoid M₁] [Module R₁ M₁]
+variable {M₁ : Type*} [AddCommMonoid M₁] [Module R₁ M₁]
 
 /-- Two linear maps are equal if they are equal on basis vectors. -/
 theorem ext {f₁ f₂ : M →ₛₗ[σ] M₁} (h : ∀ i, f₁ (b i) = f₂ (b i)) : f₁ = f₂ := by
@@ -357,7 +357,7 @@ end Map
 
 section MapCoeffs
 
-variable {R' : Type _} [Semiring R'] [Module R' M] (f : R ≃+* R')
+variable {R' : Type*} [Semiring R'] [Module R' M] (f : R ≃+* R')
   (h : ∀ (c) (x : M), f c • x = c • x)
 
 attribute [local instance] SMul.comp.isScalarTower
@@ -587,7 +587,7 @@ theorem mem_submodule_iff {P : Submodule R M} (b : Basis ι R P) {x : M} :
 
 section Constr
 
-variable (S : Type _) [Semiring S] [Module S M']
+variable (S : Type*) [Semiring S] [Module S M']
 
 variable [SMulCommClass R S M']
 
@@ -683,7 +683,7 @@ theorem equiv_symm : (b.equiv b' e).symm = b'.equiv b e.symm :=
 #align basis.equiv_symm Basis.equiv_symm
 
 @[simp]
-theorem equiv_trans {ι'' : Type _} (b'' : Basis ι'' R M'') (e : ι ≃ ι') (e' : ι' ≃ ι'') :
+theorem equiv_trans {ι'' : Type*} (b'' : Basis ι'' R M'') (e : ι ≃ ι') (e' : ι' ≃ ι'') :
     (b.equiv b' e).trans (b'.equiv b'' e') = b.equiv b'' (e.trans e') :=
   b.ext' fun i => by simp
 #align basis.equiv_trans Basis.equiv_trans
@@ -804,7 +804,7 @@ end NoZeroSMulDivisors
 section Singleton
 
 /-- `Basis.singleton ι R` is the basis sending the unique element of `ι` to `1 : R`. -/
-protected def singleton (ι R : Type _) [Unique ι] [Semiring R] : Basis ι R R :=
+protected def singleton (ι R : Type*) [Unique ι] [Semiring R] : Basis ι R R :=
   ofRepr
     { toFun := fun x => Finsupp.single default x
       invFun := fun f => f default
@@ -815,17 +815,17 @@ protected def singleton (ι R : Type _) [Unique ι] [Semiring R] : Basis ι R R
 #align basis.singleton Basis.singleton
 
 @[simp]
-theorem singleton_apply (ι R : Type _) [Unique ι] [Semiring R] (i) : Basis.singleton ι R i = 1 :=
+theorem singleton_apply (ι R : Type*) [Unique ι] [Semiring R] (i) : Basis.singleton ι R i = 1 :=
   apply_eq_iff.mpr (by simp [Basis.singleton])
 #align basis.singleton_apply Basis.singleton_apply
 
 @[simp]
-theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
+theorem singleton_repr (ι R : Type*) [Unique ι] [Semiring R] (x i) :
     (Basis.singleton ι R).repr x i = x := by simp [Basis.singleton, Unique.eq_default i]
 #align basis.singleton_repr Basis.singleton_repr
 
-theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
-    [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
+theorem basis_singleton_iff {R M : Type*} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
+    [NoZeroSMulDivisors R M] (ι : Type*) [Unique ι] :
     Nonempty (Basis ι R M) ↔ ∃ (x : _) (_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y := by
   constructor
   · rintro ⟨b⟩
@@ -981,7 +981,7 @@ theorem Basis.equivFun_ofEquivFun (e : M ≃ₗ[R] ι → R) : (Basis.ofEquivFun
   simp_rw [Basis.equivFun_apply, Basis.ofEquivFun_repr_apply]
 #align basis.equiv_fun_of_equiv_fun Basis.equivFun_ofEquivFun
 
-variable (S : Type _) [Semiring S] [Module S M']
+variable (S : Type*) [Semiring S] [Module S M']
 
 variable [SMulCommClass R S M']
 
@@ -1195,7 +1195,7 @@ protected theorem span_apply (i : ι) : (Basis.span hli i : M) = v i :=
 
 end Span
 
-theorem groupSMul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
+theorem groupSMul_span_eq_top {G : Type*} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
     Submodule.span R (Set.range (w • v)) = ⊤ := by
   rw [eq_top_iff]
@@ -1210,12 +1210,12 @@ theorem groupSMul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Dis
 
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` are elements of a group,
 `groupSMul` provides the basis corresponding to `w • v`. -/
-def groupSMul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
+def groupSMul {G : Type*} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] (v : Basis ι R M) (w : ι → G) : Basis ι R M :=
   Basis.mk (LinearIndependent.group_smul v.linearIndependent w) (groupSMul_span_eq_top v.span_eq).ge
 #align basis.group_smul Basis.groupSMul
 
-theorem groupSMul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
+theorem groupSMul_apply {G : Type*} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
     v.groupSMul w i = (w • (v : ι → M)) i :=
   mk_apply (LinearIndependent.group_smul v.linearIndependent w)
@@ -1321,22 +1321,22 @@ theorem coe_mkFinConsOfLE {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
 #align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLE
 
 /-- The basis of `R × R` given by the two vectors `(1, 0)` and `(0, 1)`. -/
-protected def finTwoProd (R : Type _) [Semiring R] : Basis (Fin 2) R (R × R) :=
+protected def finTwoProd (R : Type*) [Semiring R] : Basis (Fin 2) R (R × R) :=
   Basis.ofEquivFun (LinearEquiv.finTwoArrow R R).symm
 #align basis.fin_two_prod Basis.finTwoProd
 
 @[simp]
-theorem finTwoProd_zero (R : Type _) [Semiring R] : Basis.finTwoProd R 0 = (1, 0) := by
+theorem finTwoProd_zero (R : Type*) [Semiring R] : Basis.finTwoProd R 0 = (1, 0) := by
   simp [Basis.finTwoProd, LinearEquiv.finTwoArrow]
 #align basis.fin_two_prod_zero Basis.finTwoProd_zero
 
 @[simp]
-theorem finTwoProd_one (R : Type _) [Semiring R] : Basis.finTwoProd R 1 = (0, 1) := by
+theorem finTwoProd_one (R : Type*) [Semiring R] : Basis.finTwoProd R 1 = (0, 1) := by
   simp [Basis.finTwoProd, LinearEquiv.finTwoArrow]
 #align basis.fin_two_prod_one Basis.finTwoProd_one
 
 @[simp]
-theorem coe_finTwoProd_repr {R : Type _} [Semiring R] (x : R × R) :
+theorem coe_finTwoProd_repr {R : Type*} [Semiring R] (x : R × R) :
     ⇑((Basis.finTwoProd R).repr x) = ![x.fst, x.snd] :=
   rfl
 #align basis.coe_fin_two_prod_repr Basis.coe_finTwoProd_repr
@@ -1354,7 +1354,7 @@ variable [AddCommGroup M] [Module R M] {b : ι → M}
 
 /-- If `N` is a submodule with finite rank, do induction on adjoining a linear independent
 element to a submodule. -/
-def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort _)
+def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort*)
     (ih : ∀ N : Submodule R M,
       (∀ N' ≤ N, ∀ x ∈ N, (∀ (c : R), ∀ y ∈ N', c • x + y = (0 : M) → c = 0) → P N') → P N)
     (n : ℕ) (N : Submodule R M)
@@ -1388,7 +1388,7 @@ end Induction
 
 section RestrictScalars
 
-variable {S : Type _} [CommRing R] [Ring S] [Nontrivial S] [AddCommGroup M]
+variable {S : Type*} [CommRing R] [Ring S] [Nontrivial S] [AddCommGroup M]
 
 variable [Algebra R S] [Module S M] [Module R M]
 
chore: tidy various files (#6291)
Diff
@@ -23,7 +23,7 @@ It is inspired by Isabelle/HOL's linear algebra, and hence indirectly by HOL Lig
 ## Main definitions
 
 All definitions are given for families of vectors, i.e. `v : ι → M` where `M` is the module or
-vector space and `ι : Type*` is an arbitrary indexing type.
+vector space and `ι : Type _` is an arbitrary indexing type.
 
 * `Basis ι R M` is the type of `ι`-indexed `R`-bases for a module `M`,
   represented by a linear equiv `M ≃ₗ[R] ι →₀ R`.
@@ -512,7 +512,7 @@ section Fintype
 
 variable [Fintype ι] [DecidableEq M]
 
-/-- `b.reindex_finset_range` is a basis indexed by `finset.univ.image b`,
+/-- `b.reindexFinsetRange` is a basis indexed by `Finset.univ.image b`,
 the finite set of basis vectors themselves. -/
 def reindexFinsetRange : Basis (Finset.univ.image b) R M :=
   b.reindexRange.reindex ((Equiv.refl M).subtypeEquiv (by simp))
@@ -1085,9 +1085,9 @@ namespace Basis
 /-- Any basis is a maximal linear independent set.
 -/
 theorem maximal [Nontrivial R] (b : Basis ι R M) : b.linearIndependent.Maximal := fun w hi h => by
-  -- If `range w` is strictly bigger than `range b`,
+  -- If `w` is strictly bigger than `range b`,
   apply le_antisymm h
-  -- then choose some `x ∈ range w \ range b`,
+  -- then choose some `x ∈ w \ range b`,
   intro x p
   by_contra q
   -- and write it in terms of the basis.
@@ -1115,10 +1115,7 @@ variable (hli : LinearIndependent R v) (hsp : ⊤ ≤ span R (range v))
 /-- A linear independent family of vectors spanning the whole module is a basis. -/
 protected noncomputable def mk : Basis ι R M :=
   .ofRepr
-    {
-      hli.repr.comp
-        (LinearMap.id.codRestrict _ fun _ =>
-          hsp Submodule.mem_top) with
+    { hli.repr.comp (LinearMap.id.codRestrict _ fun _ => hsp Submodule.mem_top) with
       invFun := Finsupp.total _ _ _ v
       left_inv := fun x => hli.total_repr ⟨x, _⟩
       right_inv := fun _ => hli.repr_eq rfl }
@@ -1198,7 +1195,7 @@ protected theorem span_apply (i : ι) : (Basis.span hli i : M) = v i :=
 
 end Span
 
-theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
+theorem groupSMul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → G} :
     Submodule.span R (Set.range (w • v)) = ⊤ := by
   rw [eq_top_iff]
@@ -1209,28 +1206,28 @@ theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Dis
   obtain ⟨i, rfl⟩ := hu
   have : ((w i)⁻¹ • (1 : R)) • w i • v i ∈ p := p.smul_mem ((w i)⁻¹ • (1 : R)) (hp ⟨i, rfl⟩)
   rwa [smul_one_smul, inv_smul_smul] at this
-#align basis.group_smul_span_eq_top Basis.groupSmul_span_eq_top
+#align basis.group_smul_span_eq_top Basis.groupSMul_span_eq_top
 
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` are elements of a group,
-`group_smul` provides the basis corresponding to `w • v`. -/
-def groupSmul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
+`groupSMul` provides the basis corresponding to `w • v`. -/
+def groupSMul {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] (v : Basis ι R M) (w : ι → G) : Basis ι R M :=
-  Basis.mk (LinearIndependent.group_smul v.linearIndependent w) (groupSmul_span_eq_top v.span_eq).ge
-#align basis.group_smul Basis.groupSmul
+  Basis.mk (LinearIndependent.group_smul v.linearIndependent w) (groupSMul_span_eq_top v.span_eq).ge
+#align basis.group_smul Basis.groupSMul
 
-theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
+theorem groupSMul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMulAction G M]
     [IsScalarTower G R M] [SMulCommClass G R M] {v : Basis ι R M} {w : ι → G} (i : ι) :
-    v.groupSmul w i = (w • (v : ι → M)) i :=
+    v.groupSMul w i = (w • (v : ι → M)) i :=
   mk_apply (LinearIndependent.group_smul v.linearIndependent w)
-    (groupSmul_span_eq_top v.span_eq).ge i
-#align basis.group_smul_apply Basis.groupSmul_apply
+    (groupSMul_span_eq_top v.span_eq).ge i
+#align basis.group_smul_apply Basis.groupSMul_apply
 
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
-  groupSmul_span_eq_top hv
+  groupSMul_span_eq_top hv
 #align basis.units_smul_span_eq_top Basis.units_smul_span_eq_top
 
-/-- Given a basis `v` and a map `w` such that for all `i`, `w i` is a unit, `smul_of_is_unit`
+/-- Given a basis `v` and a map `w` such that for all `i`, `w i` is a unit, `unitsSMul`
 provides the basis corresponding to `w • v`. -/
 def unitsSMul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
   Basis.mk (LinearIndependent.units_smul v.linearIndependent w)
@@ -1262,7 +1259,7 @@ theorem repr_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι
   congr_arg (fun f : M →ₗ[R₂] R₂ => f v) (e.coord_unitsSMul w i)
 #align basis.repr_units_smul Basis.repr_unitsSMul
 
-/-- A version of `smul_of_units` that uses `IsUnit`. -/
+/-- A version of `unitsSMul` that uses `IsUnit`. -/
 def isUnitSMul (v : Basis ι R M) {w : ι → R} (hw : ∀ i, IsUnit (w i)) : Basis ι R M :=
   unitsSMul v fun i => (hw i).unit
 #align basis.is_unit_smul Basis.isUnitSMul
@@ -1306,22 +1303,22 @@ theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R
 /-- Let `b` be a basis for a submodule `N ≤ O`. If `y ∈ O` is linear independent of `N`
 and `y` and `N` together span the whole of `O`, then there is a basis for `O`
 whose basis vectors are given by `Fin.cons y b`. -/
-noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
+noncomputable def mkFinConsOfLE {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
     (b : Basis (Fin n) R N) (hNO : N ≤ O) (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0)
     (hsp : ∀ z ∈ O, ∃ c : R, z + c • y ∈ N) : Basis (Fin (n + 1)) R O :=
   mkFinCons ⟨y, yO⟩ (b.map (Submodule.comapSubtypeEquivOfLe hNO).symm)
     (fun c x hc hx => hli c x (Submodule.mem_comap.mp hc) (congr_arg ((↑) : O → M) hx))
     fun z => hsp z z.2
-#align basis.mk_fin_cons_of_le Basis.mkFinConsOfLe
+#align basis.mk_fin_cons_of_le Basis.mkFinConsOfLE
 
 @[simp]
-theorem coe_mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
+theorem coe_mkFinConsOfLE {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O) (b : Basis (Fin n) R N)
     (hNO : N ≤ O) (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0)
     (hsp : ∀ z ∈ O, ∃ c : R, z + c • y ∈ N) :
-    (mkFinConsOfLe y yO b hNO hli hsp : Fin (n + 1) → O) =
+    (mkFinConsOfLE y yO b hNO hli hsp : Fin (n + 1) → O) =
       Fin.cons ⟨y, yO⟩ (Submodule.ofLe hNO ∘ b) :=
   coe_mkFinCons _ _ _ _
-#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLe
+#align basis.coe_mk_fin_cons_of_le Basis.coe_mkFinConsOfLE
 
 /-- The basis of `R × R` given by the two vectors `(1, 0)` and `(0, 1)`. -/
 protected def finTwoProd (R : Type _) [Semiring R] : Basis (Fin 2) R (R × R) :=
chore(Mathlib/LinearAlgebra/Basis): Move results about vector spaces to a new file (#6321)

This breaks a dependency cycle with Module.Free, which means we can immediately show that all vector spaces are free modules.

The lemmas are moved without modification in this PR. A subsequent PR can use the Module.Free results to golf the vector space ones, and deduplicate the API.

Co-authored-by: Oliver Nash <github@olivernash.org>

chore(Mathlib/LinearAlgebra/Basis): Move results about vector spaces to a new file (#6321)

This breaks a dependency cycle with Module.Free, which means we can immediately show that all vector spaces are free modules.

The lemmas are moved without modification in this PR. A subsequent PR can use the Module.Free results to golf the vector space ones, and deduplicate the API.

Co-authored-by: Oliver Nash <github@olivernash.org>

Diff
@@ -48,8 +48,6 @@ vector space and `ι : Type*` is an arbitrary indexing type.
   Similar results are available for linear equivs (if they coincide on the basis vectors),
   elements (if their coordinates coincide) and the functions `b.repr` and `⇑b`.
 
-* `Basis.ofVectorSpace` states that every vector space has a basis.
-
 ## Implementation notes
 
 We use families instead of sets because it allows us to say that two identical vectors are linearly
@@ -1391,248 +1389,6 @@ def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort
 
 end Induction
 
-section DivisionRing
-
-variable [DivisionRing K] [AddCommGroup V] [AddCommGroup V'] [Module K V] [Module K V']
-
-variable {v : ι → V} {s t : Set V} {x y z : V}
-
-open Submodule
-
-namespace Basis
-
-section ExistsBasis
-
-/-- If `s` is a linear independent set of vectors, we can extend it to a basis. -/
-noncomputable def extend (hs : LinearIndependent K ((↑) : s → V)) :
-    Basis (hs.extend (subset_univ s)) K V :=
-  Basis.mk
-    (@LinearIndependent.restrict_of_comp_subtype _ _ _ id _ _ _ _ (hs.linearIndependent_extend _))
-    (SetLike.coe_subset_coe.mp <| by simpa using hs.subset_span_extend (subset_univ s))
-#align basis.extend Basis.extend
-
-theorem extend_apply_self (hs : LinearIndependent K ((↑) : s → V)) (x : hs.extend _) :
-    Basis.extend hs x = x :=
-  Basis.mk_apply _ _ _
-#align basis.extend_apply_self Basis.extend_apply_self
-
-@[simp]
-theorem coe_extend (hs : LinearIndependent K ((↑) : s → V)) : ⇑(Basis.extend hs) = ((↑) : _ → _) :=
-  funext (extend_apply_self hs)
-#align basis.coe_extend Basis.coe_extend
-
-theorem range_extend (hs : LinearIndependent K ((↑) : s → V)) :
-    range (Basis.extend hs) = hs.extend (subset_univ _) := by
-  rw [coe_extend, Subtype.range_coe_subtype, setOf_mem_eq]
-#align basis.range_extend Basis.range_extend
-
--- Porting note: adding this to make the statement of `subExtend` more readable
-/-- Auxiliary definition: the index for the new basis vectors in `Basis.sumExtend`.
-
-The specific value of this definition should be considered an implementation detail.
--/
-def sumExtendIndex (hs : LinearIndependent K v) : Set V :=
-  LinearIndependent.extend hs.to_subtype_range (subset_univ _) \ range v
-
-/-- If `v` is a linear independent family of vectors, extend it to a basis indexed by a sum type. -/
-noncomputable def sumExtend (hs : LinearIndependent K v) : Basis (ι ⊕ sumExtendIndex hs) K V :=
-  let s := Set.range v
-  let e : ι ≃ s := Equiv.ofInjective v hs.injective
-  let b := hs.to_subtype_range.extend (subset_univ (Set.range v))
-  (Basis.extend hs.to_subtype_range).reindex <|
-    Equiv.symm <|
-      calc
-        Sum ι (b \ s : Set V) ≃ Sum s (b \ s : Set V) := Equiv.sumCongr e (Equiv.refl _)
-        _ ≃ b :=
-          haveI := Classical.decPred (· ∈ s)
-          Equiv.Set.sumDiffSubset (hs.to_subtype_range.subset_extend _)
-#align basis.sum_extend Basis.sumExtend
-
-theorem subset_extend {s : Set V} (hs : LinearIndependent K ((↑) : s → V)) :
-    s ⊆ hs.extend (Set.subset_univ _) :=
-  hs.subset_extend _
-#align basis.subset_extend Basis.subset_extend
-
-section
-
-variable (K V)
-
-/-- A set used to index `Basis.ofVectorSpace`. -/
-noncomputable def ofVectorSpaceIndex : Set V :=
-  (linearIndependent_empty K V).extend (subset_univ _)
-#align basis.of_vector_space_index Basis.ofVectorSpaceIndex
-
-/-- Each vector space has a basis. -/
-noncomputable def ofVectorSpace : Basis (ofVectorSpaceIndex K V) K V :=
-  Basis.extend (linearIndependent_empty K V)
-#align basis.of_vector_space Basis.ofVectorSpace
-
-theorem ofVectorSpace_apply_self (x : ofVectorSpaceIndex K V) : ofVectorSpace K V x = x := by
-  unfold ofVectorSpace
-  exact Basis.mk_apply _ _ _
-#align basis.of_vector_space_apply_self Basis.ofVectorSpace_apply_self
-
-@[simp]
-theorem coe_ofVectorSpace : ⇑(ofVectorSpace K V) = ((↑) : _ → _ ) :=
-  funext fun x => ofVectorSpace_apply_self K V x
-#align basis.coe_of_vector_space Basis.coe_ofVectorSpace
-
-theorem ofVectorSpaceIndex.linearIndependent :
-    LinearIndependent K ((↑) : ofVectorSpaceIndex K V → V) := by
-  convert (ofVectorSpace K V).linearIndependent
-  ext x
-  rw [ofVectorSpace_apply_self]
-#align basis.of_vector_space_index.linear_independent Basis.ofVectorSpaceIndex.linearIndependent
-
-theorem range_ofVectorSpace : range (ofVectorSpace K V) = ofVectorSpaceIndex K V :=
-  range_extend _
-#align basis.range_of_vector_space Basis.range_ofVectorSpace
-
-theorem exists_basis : ∃ s : Set V, Nonempty (Basis s K V) :=
-  ⟨ofVectorSpaceIndex K V, ⟨ofVectorSpace K V⟩⟩
-#align basis.exists_basis Basis.exists_basis
-
-end
-
-end ExistsBasis
-
-end Basis
-
-open Fintype
-
-variable (K V)
-
-theorem VectorSpace.card_fintype [Fintype K] [Fintype V] : ∃ n : ℕ, card V = card K ^ n := by
-  classical
-  exact ⟨card (Basis.ofVectorSpaceIndex K V), Module.card_fintype (Basis.ofVectorSpace K V)⟩
-#align vector_space.card_fintype VectorSpace.card_fintype
-
-section AtomsOfSubmoduleLattice
-
-variable {K V}
-
-/-- For a module over a division ring, the span of a nonzero element is an atom of the
-lattice of submodules. -/
-theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodule K V) := by
-  constructor
-  · rw [Submodule.ne_bot_iff]
-    exact ⟨v, ⟨mem_span_singleton_self v, hv⟩⟩
-  · intro T hT
-    by_contra h
-    apply hT.2
-    change span K {v} ≤ T
-    simp_rw [span_singleton_le_iff_mem, ← Ne.def, Submodule.ne_bot_iff] at *
-    rcases h with ⟨s, ⟨hs, hz⟩⟩
-    rcases mem_span_singleton.1 (hT.1 hs) with ⟨a, rfl⟩
-    rcases eq_or_ne a 0 with rfl | h
-    · simp only [zero_smul, ne_eq, not_true] at hz
-    · rwa [T.smul_mem_iff h] at hs
-#align nonzero_span_atom nonzero_span_atom
-
-/-- The atoms of the lattice of submodules of a module over a division ring are the
-submodules equal to the span of a nonzero element of the module. -/
-theorem atom_iff_nonzero_span (W : Submodule K V) :
-    IsAtom W ↔ ∃ (v : V) (_ : v ≠ 0), W = span K {v} := by
-  refine' ⟨fun h => _, fun h => _⟩
-  · cases' h with hbot h
-    rcases(Submodule.ne_bot_iff W).1 hbot with ⟨v, ⟨hW, hv⟩⟩
-    refine' ⟨v, ⟨hv, _⟩⟩
-    by_contra heq
-    specialize h (span K {v})
-    rw [span_singleton_eq_bot, lt_iff_le_and_ne] at h
-    exact hv (h ⟨(span_singleton_le_iff_mem v W).2 hW, Ne.symm heq⟩)
-  · rcases h with ⟨v, ⟨hv, rfl⟩⟩
-    exact nonzero_span_atom v hv
-#align atom_iff_nonzero_span atom_iff_nonzero_span
-
-/-- The lattice of submodules of a module over a division ring is atomistic. -/
-instance : IsAtomistic (Submodule K V) where
-  eq_sSup_atoms W := by
-    refine ⟨_, submodule_eq_sSup_le_nonzero_spans W, ?_⟩
-    rintro _ ⟨w, ⟨_, ⟨hw, rfl⟩⟩⟩
-    exact nonzero_span_atom w hw
-
-end AtomsOfSubmoduleLattice
-
-variable {K V}
-
-theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj : LinearMap.ker f = ⊥) :
-    ∃ g : V' →ₗ[K] V, g.comp f = LinearMap.id := by
-  let B := Basis.ofVectorSpaceIndex K V
-  let hB := Basis.ofVectorSpace K V
-  have hB₀ : _ := hB.linearIndependent.to_subtype_range
-  have : LinearIndependent K (fun x => x : f '' B → V') := by
-    have h₁ : LinearIndependent K ((↑) : ↥(f '' Set.range (Basis.ofVectorSpace K V)) → V') :=
-      @LinearIndependent.image_subtype _ _ _ _ _ _ _ _ _ f hB₀ (show Disjoint _ _ by simp [hf_inj])
-    rwa [Basis.range_ofVectorSpace K V] at h₁
-  let C := this.extend (subset_univ _)
-  have BC := this.subset_extend (subset_univ _)
-  let hC := Basis.extend this
-  haveI Vinh : Inhabited V := ⟨0⟩
-  refine' ⟨(hC.constr ℕ : _ → _) (C.restrict (invFun f)), hB.ext fun b => _⟩
-  rw [image_subset_iff] at BC
-  have fb_eq : f b = hC ⟨f b, BC b.2⟩ := by
-    change f b = Basis.extend this _
-    simp_rw [Basis.extend_apply_self]
-  dsimp []
-  rw [Basis.ofVectorSpace_apply_self, fb_eq, hC.constr_basis]
-  exact leftInverse_invFun (LinearMap.ker_eq_bot.1 hf_inj) _
-#align linear_map.exists_left_inverse_of_injective LinearMap.exists_leftInverse_of_injective
-
-theorem Submodule.exists_isCompl (p : Submodule K V) : ∃ q : Submodule K V, IsCompl p q :=
-  let ⟨f, hf⟩ := p.subtype.exists_leftInverse_of_injective p.ker_subtype
-  ⟨LinearMap.ker f, LinearMap.isCompl_of_proj <| LinearMap.ext_iff.1 hf⟩
-#align submodule.exists_is_compl Submodule.exists_isCompl
-
-instance Module.Submodule.complementedLattice : ComplementedLattice (Submodule K V) :=
-  ⟨Submodule.exists_isCompl⟩
-#align module.submodule.complemented_lattice Module.Submodule.complementedLattice
-
-theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_surj : range f = ⊤) :
-    ∃ g : V' →ₗ[K] V, f.comp g = LinearMap.id := by
-  let C := Basis.ofVectorSpaceIndex K V'
-  let hC := Basis.ofVectorSpace K V'
-  haveI : Inhabited V := ⟨0⟩
-  refine' ⟨(hC.constr ℕ : _ → _) (C.restrict (invFun f)), hC.ext fun c => _⟩
-  rw [LinearMap.comp_apply, hC.constr_basis]
-  simp [rightInverse_invFun (LinearMap.range_eq_top.1 hf_surj) c]
-#align linear_map.exists_right_inverse_of_surjective LinearMap.exists_rightInverse_of_surjective
-
-/-- Any linear map `f : p →ₗ[K] V'` defined on a subspace `p` can be extended to the whole
-space. -/
-theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
-    ∃ g : V →ₗ[K] V', g.comp p.subtype = f :=
-  let ⟨g, hg⟩ := p.subtype.exists_leftInverse_of_injective p.ker_subtype
-  ⟨f.comp g, by rw [LinearMap.comp_assoc, hg, f.comp_id]⟩
-#align linear_map.exists_extend LinearMap.exists_extend
-
-open Submodule LinearMap
-
-/-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
-`f : V →ₗ[K] K` such that `p ≤ ker f`. -/
-theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
-    ∃ (f : V →ₗ[K] K), f ≠ 0 ∧ p ≤ ker f := by
-  rcases SetLike.exists_of_lt hp with ⟨v, -, hpv⟩; clear hp
-  rcases(LinearPMap.supSpanSingleton ⟨p, 0⟩ v (1 : K) hpv).toFun.exists_extend with ⟨f, hf⟩
-  refine' ⟨f, _, _⟩
-  · rintro rfl
-    rw [LinearMap.zero_comp] at hf
-    have := LinearPMap.supSpanSingleton_apply_mk ⟨p, 0⟩ v (1 : K) hpv 0 p.zero_mem 1
-    simpa using (LinearMap.congr_fun hf _).trans this
-  · refine' fun x hx => mem_ker.2 _
-    have := LinearPMap.supSpanSingleton_apply_mk ⟨p, 0⟩ v (1 : K) hpv x hx 0
-    simpa using (LinearMap.congr_fun hf _).trans this
-#align submodule.exists_le_ker_of_lt_top Submodule.exists_le_ker_of_lt_top
-
-theorem quotient_prod_linearEquiv (p : Submodule K V) : Nonempty (((V ⧸ p) × p) ≃ₗ[K] V) :=
-  let ⟨q, hq⟩ := p.exists_isCompl
-  Nonempty.intro <|
-    ((quotientEquivOfIsCompl p q hq).prod (LinearEquiv.refl _ _)).trans
-      (prodEquivOfIsCompl q p hq.symm)
-#align quotient_prod_linear_equiv quotient_prod_linearEquiv
-
-end DivisionRing
-
 section RestrictScalars
 
 variable {S : Type _} [CommRing R] [Ring S] [Nontrivial S] [AddCommGroup M]
chore: fix grammar mistakes (#6121)
Diff
@@ -1646,7 +1646,7 @@ variable (R)
 open Submodule
 
 /-- Let `b` be an `S`-basis of `M`. Let `R` be a CommRing such that `Algebra R S` has no zero smul
-divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
+divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as an `R`-basis. -/
 noncomputable def Basis.restrictScalars : Basis ι R (span R (Set.range b)) :=
   Basis.span (b.linearIndependent.restrict_scalars (smul_left_injective R one_ne_zero))
 #align basis.restrict_scalars Basis.restrictScalars
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -2,11 +2,6 @@
 Copyright (c) 2017 Johannes Hölzl. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl, Mario Carneiro, Alexander Bentkamp
-
-! This file was ported from Lean 3 source module linear_algebra.basis
-! leanprover-community/mathlib commit 13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Algebra.BigOperators.Finsupp
 import Mathlib.Algebra.BigOperators.Finprod
@@ -16,6 +11,8 @@ import Mathlib.LinearAlgebra.LinearIndependent
 import Mathlib.LinearAlgebra.LinearPMap
 import Mathlib.LinearAlgebra.Projection
 
+#align_import linear_algebra.basis from "leanprover-community/mathlib"@"13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395"
+
 /-!
 # Bases
 
chore: cleanup whitespace (#5988)

Grepping for [^ .:{-] [^ :] and reviewing the results. Once I started I couldn't stop. :-)

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -627,7 +627,7 @@ theorem constr_def (f : ι → M') :
 #align basis.constr_def Basis.constr_def
 
 theorem constr_apply (f : ι → M') (x : M) :
-    constr (M' := M') b S f x  = (b.repr x).sum fun b a => a • f b := by
+    constr (M' := M') b S f x = (b.repr x).sum fun b a => a • f b := by
   simp only [constr_def, LinearMap.comp_apply, Finsupp.lmapDomain_apply, Finsupp.total_apply]
   rw [Finsupp.sum_mapDomain_index] <;> simp [add_smul]
 #align basis.constr_apply Basis.constr_apply
chore: fix grammar in docs (#5668)
Diff
@@ -706,8 +706,8 @@ section Prod
 
 variable (b' : Basis ι' R M')
 
-/-- `Basis.prod` maps a `ι`-indexed basis for `M` and a `ι'`-indexed basis for `M'`
-to a `ι ⊕ ι'`-index basis for `M × M'`.
+/-- `Basis.prod` maps an `ι`-indexed basis for `M` and an `ι'`-indexed basis for `M'`
+to an `ι ⊕ ι'`-index basis for `M × M'`.
 For the specific case of `R × R`, see also `Basis.finTwoProd`. -/
 protected def prod : Basis (Sum ι ι') R (M × M') :=
   ofRepr ((b.repr.prod b'.repr).trans (Finsupp.sumFinsuppLEquivProdFinsupp R).symm)
@@ -1648,7 +1648,7 @@ variable (R)
 
 open Submodule
 
-/-- Let `b` be a `S`-basis of `M`. Let `R` be a CommRing such that `Algebra R S` has no zero smul
+/-- Let `b` be an `S`-basis of `M`. Let `R` be a CommRing such that `Algebra R S` has no zero smul
 divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
 noncomputable def Basis.restrictScalars : Basis ι R (span R (Set.range b)) :=
   Basis.span (b.linearIndependent.restrict_scalars (smul_left_injective R one_ne_zero))
@@ -1673,7 +1673,7 @@ theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
     Basis.restrictScalars_apply, LinearMap.coe_restrictScalars]
 #align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_apply
 
-/-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
+/-- Let `b` be an `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
 coordinates of `m` on the basis `b` are in `R` (see `Basis.mem_span` for the case `R = S`). -/
 theorem Basis.mem_span_iff_repr_mem (m : M) :
     m ∈ span R (Set.range b) ↔ ∀ i, b.repr m i ∈ Set.range (algebraMap R S) := by
fix: ∑' precedence (#5615)
  • Also remove most superfluous parentheses around big operators (, and variants).
  • roughly the used regex: ([^a-zA-Zα-ωΑ-Ω'𝓝ℳ₀𝕂ₛ)]) \(([∑∏][^()∑∏]*,[^()∑∏:]*)\) ([⊂⊆=<≤]) replaced by $1 $2 $3
Diff
@@ -924,12 +924,12 @@ theorem Basis.map_equivFun (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm.tr
   rfl
 #align basis.map_equiv_fun Basis.map_equivFun
 
-theorem Basis.sum_equivFun (u : M) : (∑ i, b.equivFun u i • b i) = u := by
+theorem Basis.sum_equivFun (u : M) : ∑ i, b.equivFun u i • b i = u := by
   conv_rhs => rw [← b.total_repr u]
   simp [Finsupp.total_apply, Finsupp.sum_fintype, b.equivFun_apply]
 #align basis.sum_equiv_fun Basis.sum_equivFun
 
-theorem Basis.sum_repr (u : M) : (∑ i, b.repr u i • b i) = u :=
+theorem Basis.sum_repr (u : M) : ∑ i, b.repr u i • b i = u :=
   b.sum_equivFun u
 #align basis.sum_repr Basis.sum_repr
 
chore: clean up spacing around at and goals (#5387)

Changes are of the form

  • some_tactic at h⊢ -> some_tactic at h ⊢
  • some_tactic at h -> some_tactic at h
Diff
@@ -1209,7 +1209,7 @@ theorem groupSmul_span_eq_top {G : Type _} [Group G] [DistribMulAction G R] [Dis
   rw [eq_top_iff]
   intro j hj
   rw [← hv] at hj
-  rw [Submodule.mem_span] at hj⊢
+  rw [Submodule.mem_span] at hj ⊢
   refine' fun p hp => hj p fun u hu => _
   obtain ⟨i, rfl⟩ := hu
   have : ((w i)⁻¹ • (1 : R)) • w i • v i ∈ p := p.smul_mem ((w i)⁻¹ • (1 : R)) (hp ⟨i, rfl⟩)
chore: cleanup a change at porting note (#5243)

Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au>

Diff
@@ -1103,9 +1103,7 @@ theorem maximal [Nontrivial R] (b : Basis ι R M) : b.linearIndependent.Maximal
     ⟨fun i => ⟨b i, h ⟨i, rfl⟩⟩, fun i i' r =>
       b.injective (by simpa only [Subtype.mk_eq_mk] using r)⟩
   simp_rw [Finsupp.total_apply] at e
-  -- Porting note: `change at` doesn't work
-  replace e : ((b.repr x).sum fun (i : ι) (a : R) ↦ a • (u i : M)) =
-      ((⟨x, p⟩ : w) : M) := e
+  change ((b.repr x).sum fun (i : ι) (a : R) ↦ a • (u i : M)) = ((⟨x, p⟩ : w) : M) at e
   rw [← Finsupp.sum_embDomain (f := u) (g := fun x r ↦ r • (x : M)), ← Finsupp.total_apply] at e
   -- Now we can contradict the linear independence of `hi`
   refine' hi.total_ne_of_not_mem_support _ _ e
chore: formatting issues (#4947)

Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Parcly Taxel <reddeloostw@gmail.com>

Diff
@@ -831,7 +831,7 @@ theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
 
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
-    Nonempty (Basis ι R M) ↔ ∃ (x : _)(_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y := by
+    Nonempty (Basis ι R M) ↔ ∃ (x : _) (_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y := by
   constructor
   · rintro ⟨b⟩
     refine' ⟨b default, b.linearIndependent.ne_zero _, _⟩
@@ -1437,7 +1437,7 @@ theorem range_extend (hs : LinearIndependent K ((↑) : s → V)) :
 The specific value of this definition should be considered an implementation detail.
 -/
 def sumExtendIndex (hs : LinearIndependent K v) : Set V :=
-LinearIndependent.extend hs.to_subtype_range (subset_univ _) \ range v
+  LinearIndependent.extend hs.to_subtype_range (subset_univ _) \ range v
 
 /-- If `v` is a linear independent family of vectors, extend it to a basis indexed by a sum type. -/
 noncomputable def sumExtend (hs : LinearIndependent K v) : Basis (ι ⊕ sumExtendIndex hs) K V :=
chore: fix many typos (#4535)

Run codespell Mathlib and keep some suggestions.

Diff
@@ -387,7 +387,7 @@ def mapCoeffs : Basis ι R' M := by
 
 theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
   apply_eq_iff.mpr <| by
-    -- Porting note: in Lean 3, these were automatically infered from the definition of
+    -- Porting note: in Lean 3, these were automatically inferred from the definition of
     -- `mapCoeffs`.
     letI : Module R' R := Module.compHom R (↑f.symm : R' →+* R)
     haveI : IsScalarTower R' R M :=
feat: port LinearAlgebra.FreeModule.IdealQuotient (#4356)

This changes Basis.mem_submodule_iff' and Basis.mem_ideal_iff' because Lean 4 inserts the coercion in a different place than Lean 3 does. Otherwise, just a few implicits that needed to be explicit and one syntax weirdness.

Diff
@@ -999,7 +999,7 @@ theorem Basis.constr_apply_fintype (f : ι → M') (x : M) :
 /-- If the submodule `P` has a finite basis,
 `x ∈ P` iff it is a linear combination of basis vectors. -/
 theorem Basis.mem_submodule_iff' {P : Submodule R M} (b : Basis ι R P) {x : M} :
-    x ∈ P ↔ ∃ c : ι → R, x = ∑ i, c i • b i :=
+    x ∈ P ↔ ∃ c : ι → R, x = ∑ i, c i • (b i : M) :=
   b.mem_submodule_iff.trans <|
     Finsupp.equivFunOnFinite.exists_congr_left.trans <|
       exists_congr fun c => by simp [Finsupp.sum_fintype, Finsupp.equivFunOnFinite]
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl, Mario Carneiro, Alexander Bentkamp
 
 ! This file was ported from Lean 3 source module linear_algebra.basis
-! leanprover-community/mathlib commit 04cdee31e196e30f507e8e9eb2d06e02c9ff6310
+! leanprover-community/mathlib commit 13bce9a6b6c44f6b4c91ac1c1d2a816e2533d395
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -980,6 +980,12 @@ theorem Basis.ofEquivFun_equivFun (v : Basis ι R M) : Basis.ofEquivFun v.equivF
     simp only [Finset.mem_univ, if_true, Pi.zero_apply, one_smul, Finset.sum_ite_eq', zero_smul]
 #align basis.of_equiv_fun_equiv_fun Basis.ofEquivFun_equivFun
 
+@[simp]
+theorem Basis.equivFun_ofEquivFun (e : M ≃ₗ[R] ι → R) : (Basis.ofEquivFun e).equivFun = e := by
+  ext j
+  simp_rw [Basis.equivFun_apply, Basis.ofEquivFun_repr_apply]
+#align basis.equiv_fun_of_equiv_fun Basis.equivFun_ofEquivFun
+
 variable (S : Type _) [Semiring S] [Module S M']
 
 variable [SMulCommClass R S M']
chore: delete 2074 references (#4030)
Diff
@@ -74,9 +74,6 @@ open Function Set Submodule
 
 open BigOperators
 
--- Porting note: TODO: workaround for lean4#2074
--- attribute [-instance] Ring.toNonAssocRing
-
 variable {ι : Type _} {ι' : Type _} {R : Type _} {R₂ : Type _} {K : Type _}
 variable {M : Type _} {M' M'' : Type _} {V : Type u} {V' : Type _}
 
@@ -1556,9 +1553,6 @@ instance : IsAtomistic (Submodule K V) where
 
 end AtomsOfSubmoduleLattice
 
--- Porting note: TODO: workaround for lean4#2074
-attribute [-instance] Ring.toNonAssocRing
-
 variable {K V}
 
 theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj : LinearMap.ker f = ⊥) :
chore: reenable eta, bump to nightly 2023-05-16 (#3414)

Now that leanprover/lean4#2210 has been merged, this PR:

  • removes all the set_option synthInstance.etaExperiment true commands (and some etaExperiment% term elaborators)
  • removes many but not quite all set_option maxHeartbeats commands
  • makes various other changes required to cope with leanprover/lean4#2210.

Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Matthew Ballard <matt@mrb.email>

Diff
@@ -832,7 +832,6 @@ theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
     (Basis.singleton ι R).repr x i = x := by simp [Basis.singleton, Unique.eq_default i]
 #align basis.singleton_repr Basis.singleton_repr
 
-set_option synthInstance.etaExperiment true in
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
     Nonempty (Basis ι R M) ↔ ∃ (x : _)(_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y := by
@@ -1117,7 +1116,6 @@ section Mk
 
 variable (hli : LinearIndependent R v) (hsp : ⊤ ≤ span R (range v))
 
-set_option synthInstance.etaExperiment true in
 /-- A linear independent family of vectors spanning the whole module is a basis. -/
 protected noncomputable def mk : Basis ι R M :=
   .ofRepr
@@ -1130,7 +1128,6 @@ protected noncomputable def mk : Basis ι R M :=
       right_inv := fun _ => hli.repr_eq rfl }
 #align basis.mk Basis.mk
 
-set_option synthInstance.etaExperiment true in
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
   rfl
@@ -1147,14 +1144,12 @@ theorem coe_mk : ⇑(Basis.mk hli hsp) = v :=
 
 variable {hli hsp}
 
-set_option synthInstance.etaExperiment true in
 /-- Given a basis, the `i`th element of the dual basis evaluates to 1 on the `i`th element of the
 basis. -/
 theorem mk_coord_apply_eq (i : ι) : (Basis.mk hli hsp).coord i (v i) = 1 :=
   show hli.repr ⟨v i, Submodule.subset_span (mem_range_self i)⟩ i = 1 by simp [hli.repr_eq_single i]
 #align basis.mk_coord_apply_eq Basis.mk_coord_apply_eq
 
-set_option synthInstance.etaExperiment true in
 /-- Given a basis, the `i`th element of the dual basis evaluates to 0 on the `j`th element of the
 basis if `j ≠ i`. -/
 theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).coord i (v j) = 0 :=
@@ -1234,7 +1229,6 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
     (groupSmul_span_eq_top v.span_eq).ge i
 #align basis.group_smul_apply Basis.groupSmul_apply
 
-set_option synthInstance.etaExperiment true in
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
   groupSmul_span_eq_top hv
@@ -1252,7 +1246,6 @@ theorem unitsSMul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : unitsSMul
     (units_smul_span_eq_top v.span_eq).ge i
 #align basis.units_smul_apply Basis.unitsSMul_apply
 
-set_option synthInstance.etaExperiment true in
 @[simp]
 theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     (unitsSMul e w).coord i = (w i)⁻¹ • e.coord i := by
@@ -1267,7 +1260,6 @@ theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     split_ifs with h <;> simp [h]
 #align basis.coord_units_smul Basis.coord_unitsSMul
 
-set_option synthInstance.etaExperiment true in
 @[simp]
 theorem repr_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
     (e.unitsSMul w).repr v i = (w i)⁻¹ • e.repr v i :=
@@ -1621,7 +1613,6 @@ theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
 
 open Submodule LinearMap
 
-set_option synthInstance.etaExperiment true in
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
 theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
@@ -1659,7 +1650,6 @@ variable (R)
 
 open Submodule
 
-set_option synthInstance.etaExperiment true in
 /-- Let `b` be a `S`-basis of `M`. Let `R` be a CommRing such that `Algebra R S` has no zero smul
 divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
 noncomputable def Basis.restrictScalars : Basis ι R (span R (Set.range b)) :=
@@ -1671,7 +1661,6 @@ theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i
   simp only [Basis.restrictScalars, Basis.span_apply]
 #align basis.restrict_scalars_apply Basis.restrictScalars_apply
 
-set_option synthInstance.etaExperiment true in
 @[simp]
 theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
     algebraMap R S ((b.restrictScalars R).repr m i) = b.repr m i := by
chore: Rename to sSup/iSup (#3938)

As discussed on Zulip

Renames

  • supₛsSup
  • infₛsInf
  • supᵢiSup
  • infᵢiInf
  • bsupₛbsSup
  • binfₛbsInf
  • bsupᵢbiSup
  • binfᵢbiInf
  • csupₛcsSup
  • cinfₛcsInf
  • csupᵢciSup
  • cinfᵢciInf
  • unionₛsUnion
  • interₛsInter
  • unionᵢiUnion
  • interᵢiInter
  • bunionₛbsUnion
  • binterₛbsInter
  • bunionᵢbiUnion
  • binterᵢbiInter

Co-authored-by: Parcly Taxel <reddeloostw@gmail.com>

Diff
@@ -1557,8 +1557,8 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
 
 /-- The lattice of submodules of a module over a division ring is atomistic. -/
 instance : IsAtomistic (Submodule K V) where
-  eq_supₛ_atoms W := by
-    refine ⟨_, submodule_eq_supₛ_le_nonzero_spans W, ?_⟩
+  eq_sSup_atoms W := by
+    refine ⟨_, submodule_eq_sSup_le_nonzero_spans W, ?_⟩
     rintro _ ⟨w, ⟨_, ⟨hw, rfl⟩⟩⟩
     exact nonzero_span_atom w hw
 
chore: bye-bye, solo bys! (#3825)

This PR puts, with one exception, every single remaining by that lies all by itself on its own line to the previous line, thus matching the current behaviour of start-port.sh. The exception is when the by begins the second or later argument to a tuple or anonymous constructor; see https://github.com/leanprover-community/mathlib4/pull/3825#discussion_r1186702599.

Essentially this is s/\n *by$/ by/g, but with manual editing to satisfy the linter's max-100-char-line requirement. The Python style linter is also modified to catch these "isolated bys".

Diff
@@ -1190,11 +1190,8 @@ protected noncomputable def span : Basis ι R (span R (range v)) :=
       rw [← span_image, Submodule.coeSubtype]
       -- Porting note: why doesn't `rw [h₁]` work here?
       exact congr_arg _ h₁
-    have h₃ :
-      (x : M) ∈
-        map (Submodule.subtype (span R (range v)))
-          (span R (Set.range fun i => Subtype.mk (v i) _)) :=
-      by
+    have h₃ : (x : M) ∈ map (Submodule.subtype (span R (range v)))
+        (span R (Set.range fun i => Subtype.mk (v i) _)) := by
       rw [h₂]
       apply Subtype.mem x
     rcases mem_map.1 h₃ with ⟨y, hy₁, hy₂⟩
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl, Mario Carneiro, Alexander Bentkamp
 
 ! This file was ported from Lean 3 source module linear_algebra.basis
-! leanprover-community/mathlib commit 2f4cdce0c2f2f3b8cd58f05d556d03b468e1eb2e
+! leanprover-community/mathlib commit 04cdee31e196e30f507e8e9eb2d06e02c9ff6310
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -1649,3 +1649,58 @@ theorem quotient_prod_linearEquiv (p : Submodule K V) : Nonempty (((V ⧸ p) ×
 #align quotient_prod_linear_equiv quotient_prod_linearEquiv
 
 end DivisionRing
+
+section RestrictScalars
+
+variable {S : Type _} [CommRing R] [Ring S] [Nontrivial S] [AddCommGroup M]
+
+variable [Algebra R S] [Module S M] [Module R M]
+
+variable [IsScalarTower R S M] [NoZeroSMulDivisors R S] (b : Basis ι S M)
+
+variable (R)
+
+open Submodule
+
+set_option synthInstance.etaExperiment true in
+/-- Let `b` be a `S`-basis of `M`. Let `R` be a CommRing such that `Algebra R S` has no zero smul
+divisors, then the submodule of `M` spanned by `b` over `R` admits `b` as a `R`-basis. -/
+noncomputable def Basis.restrictScalars : Basis ι R (span R (Set.range b)) :=
+  Basis.span (b.linearIndependent.restrict_scalars (smul_left_injective R one_ne_zero))
+#align basis.restrict_scalars Basis.restrictScalars
+
+@[simp]
+theorem Basis.restrictScalars_apply (i : ι) : (b.restrictScalars R i : M) = b i := by
+  simp only [Basis.restrictScalars, Basis.span_apply]
+#align basis.restrict_scalars_apply Basis.restrictScalars_apply
+
+set_option synthInstance.etaExperiment true in
+@[simp]
+theorem Basis.restrictScalars_repr_apply (m : span R (Set.range b)) (i : ι) :
+    algebraMap R S ((b.restrictScalars R).repr m i) = b.repr m i := by
+  suffices
+    Finsupp.mapRange.linearMap (Algebra.linearMap R S) ∘ₗ (b.restrictScalars R).repr.toLinearMap =
+      ((b.repr : M →ₗ[S] ι →₀ S).restrictScalars R).domRestrict _
+    by exact FunLike.congr_fun (LinearMap.congr_fun this m) i
+  refine Basis.ext (b.restrictScalars R) fun _ => ?_
+  simp only [LinearMap.coe_comp, LinearEquiv.coe_toLinearMap, Function.comp_apply, map_one,
+    Basis.repr_self, Finsupp.mapRange.linearMap_apply, Finsupp.mapRange_single,
+    Algebra.linearMap_apply, LinearMap.domRestrict_apply, LinearEquiv.coe_coe,
+    Basis.restrictScalars_apply, LinearMap.coe_restrictScalars]
+#align basis.restrict_scalars_repr_apply Basis.restrictScalars_repr_apply
+
+/-- Let `b` be a `S`-basis of `M`. Then `m : M` lies in the `R`-module spanned by `b` iff all the
+coordinates of `m` on the basis `b` are in `R` (see `Basis.mem_span` for the case `R = S`). -/
+theorem Basis.mem_span_iff_repr_mem (m : M) :
+    m ∈ span R (Set.range b) ↔ ∀ i, b.repr m i ∈ Set.range (algebraMap R S) := by
+  refine
+    ⟨fun hm i => ⟨(b.restrictScalars R).repr ⟨m, hm⟩ i, b.restrictScalars_repr_apply R ⟨m, hm⟩ i⟩,
+      fun h => ?_⟩
+  rw [← b.total_repr m, Finsupp.total_apply S _]
+  refine sum_mem fun i _ => ?_
+  obtain ⟨_, h⟩ := h i
+  simp_rw [← h, algebraMap_smul]
+  exact smul_mem _ _ (subset_span (Set.mem_range_self i))
+#align basis.mem_span_iff_repr_mem Basis.mem_span_iff_repr_mem
+
+end RestrictScalars
feat: port LinearAlgebra.Matrix.Basis (#3691)

Co-authored-by: Parcly Taxel <reddeloostw@gmail.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Komyyy <pol_tta@outlook.jp> Co-authored-by: Johan Commelin <johan@commelin.net>

Diff
@@ -1245,47 +1245,47 @@ theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range
 
 /-- Given a basis `v` and a map `w` such that for all `i`, `w i` is a unit, `smul_of_is_unit`
 provides the basis corresponding to `w • v`. -/
-def unitsSmul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
+def unitsSMul (v : Basis ι R M) (w : ι → Rˣ) : Basis ι R M :=
   Basis.mk (LinearIndependent.units_smul v.linearIndependent w)
     (units_smul_span_eq_top v.span_eq).ge
-#align basis.units_smul Basis.unitsSmul
+#align basis.units_smul Basis.unitsSMul
 
-theorem unitsSmul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : unitsSmul v w i = w i • v i :=
+theorem unitsSMul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : unitsSMul v w i = w i • v i :=
   mk_apply (LinearIndependent.units_smul v.linearIndependent w)
     (units_smul_span_eq_top v.span_eq).ge i
-#align basis.units_smul_apply Basis.unitsSmul_apply
+#align basis.units_smul_apply Basis.unitsSMul_apply
 
 set_option synthInstance.etaExperiment true in
 @[simp]
-theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
-    (unitsSmul e w).coord i = (w i)⁻¹ • e.coord i := by
+theorem coord_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
+    (unitsSMul e w).coord i = (w i)⁻¹ • e.coord i := by
   classical
     apply e.ext
     intro j
-    trans ((unitsSmul e w).coord i) ((w j)⁻¹ • (unitsSmul e w) j)
+    trans ((unitsSMul e w).coord i) ((w j)⁻¹ • (unitsSMul e w) j)
     · congr
-      simp [Basis.unitsSmul, ← mul_smul]
+      simp [Basis.unitsSMul, ← mul_smul]
     simp only [Basis.coord_apply, LinearMap.smul_apply, Basis.repr_self, Units.smul_def,
       SMulHomClass.map_smul, Finsupp.single_apply]
     split_ifs with h <;> simp [h]
-#align basis.coord_units_smul Basis.coord_unitsSmul
+#align basis.coord_units_smul Basis.coord_unitsSMul
 
 set_option synthInstance.etaExperiment true in
 @[simp]
-theorem repr_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
-    (e.unitsSmul w).repr v i = (w i)⁻¹ • e.repr v i :=
-  congr_arg (fun f : M →ₗ[R₂] R₂ => f v) (e.coord_unitsSmul w i)
-#align basis.repr_units_smul Basis.repr_unitsSmul
+theorem repr_unitsSMul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
+    (e.unitsSMul w).repr v i = (w i)⁻¹ • e.repr v i :=
+  congr_arg (fun f : M →ₗ[R₂] R₂ => f v) (e.coord_unitsSMul w i)
+#align basis.repr_units_smul Basis.repr_unitsSMul
 
 /-- A version of `smul_of_units` that uses `IsUnit`. -/
-def isUnitSmul (v : Basis ι R M) {w : ι → R} (hw : ∀ i, IsUnit (w i)) : Basis ι R M :=
-  unitsSmul v fun i => (hw i).unit
-#align basis.is_unit_smul Basis.isUnitSmul
-
-theorem isUnitSmul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (w i)) (i : ι) :
-    v.isUnitSmul hw i = w i • v i :=
-  unitsSmul_apply i
-#align basis.is_unit_smul_apply Basis.isUnitSmul_apply
+def isUnitSMul (v : Basis ι R M) {w : ι → R} (hw : ∀ i, IsUnit (w i)) : Basis ι R M :=
+  unitsSMul v fun i => (hw i).unit
+#align basis.is_unit_smul Basis.isUnitSMul
+
+theorem isUnitSMul_apply {v : Basis ι R M} {w : ι → R} (hw : ∀ i, IsUnit (w i)) (i : ι) :
+    v.isUnitSMul hw i = w i • v i :=
+  unitsSMul_apply i
+#align basis.is_unit_smul_apply Basis.isUnitSMul_apply
 
 section Fin
 
chore: use etaExperiment rather than hacking with instances (#3668)

This is to fix timeouts in https://github.com/leanprover-community/mathlib4/pull/3552.

See discussion at https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/!4.233552.20.28LinearAlgebra.2EMatrix.2EToLin.29.

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -832,6 +832,7 @@ theorem singleton_repr (ι R : Type _) [Unique ι] [Semiring R] (x i) :
     (Basis.singleton ι R).repr x i = x := by simp [Basis.singleton, Unique.eq_default i]
 #align basis.singleton_repr Basis.singleton_repr
 
+set_option synthInstance.etaExperiment true in
 theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup M] [Module R M]
     [NoZeroSMulDivisors R M] (ι : Type _) [Unique ι] :
     Nonempty (Basis ι R M) ↔ ∃ (x : _)(_ : x ≠ 0), ∀ y : M, ∃ r : R, r • x = y := by
@@ -1116,6 +1117,7 @@ section Mk
 
 variable (hli : LinearIndependent R v) (hsp : ⊤ ≤ span R (range v))
 
+set_option synthInstance.etaExperiment true in
 /-- A linear independent family of vectors spanning the whole module is a basis. -/
 protected noncomputable def mk : Basis ι R M :=
   .ofRepr
@@ -1128,6 +1130,7 @@ protected noncomputable def mk : Basis ι R M :=
       right_inv := fun _ => hli.repr_eq rfl }
 #align basis.mk Basis.mk
 
+set_option synthInstance.etaExperiment true in
 @[simp]
 theorem mk_repr : (Basis.mk hli hsp).repr x = hli.repr ⟨x, hsp Submodule.mem_top⟩ :=
   rfl
@@ -1144,12 +1147,14 @@ theorem coe_mk : ⇑(Basis.mk hli hsp) = v :=
 
 variable {hli hsp}
 
+set_option synthInstance.etaExperiment true in
 /-- Given a basis, the `i`th element of the dual basis evaluates to 1 on the `i`th element of the
 basis. -/
 theorem mk_coord_apply_eq (i : ι) : (Basis.mk hli hsp).coord i (v i) = 1 :=
   show hli.repr ⟨v i, Submodule.subset_span (mem_range_self i)⟩ i = 1 by simp [hli.repr_eq_single i]
 #align basis.mk_coord_apply_eq Basis.mk_coord_apply_eq
 
+set_option synthInstance.etaExperiment true in
 /-- Given a basis, the `i`th element of the dual basis evaluates to 0 on the `j`th element of the
 basis if `j ≠ i`. -/
 theorem mk_coord_apply_ne {i j : ι} (h : j ≠ i) : (Basis.mk hli hsp).coord i (v j) = 0 :=
@@ -1232,6 +1237,7 @@ theorem groupSmul_apply {G : Type _} [Group G] [DistribMulAction G R] [DistribMu
     (groupSmul_span_eq_top v.span_eq).ge i
 #align basis.group_smul_apply Basis.groupSmul_apply
 
+set_option synthInstance.etaExperiment true in
 theorem units_smul_span_eq_top {v : ι → M} (hv : Submodule.span R (Set.range v) = ⊤) {w : ι → Rˣ} :
     Submodule.span R (Set.range (w • v)) = ⊤ :=
   groupSmul_span_eq_top hv
@@ -1249,6 +1255,7 @@ theorem unitsSmul_apply {v : Basis ι R M} {w : ι → Rˣ} (i : ι) : unitsSmul
     (units_smul_span_eq_top v.span_eq).ge i
 #align basis.units_smul_apply Basis.unitsSmul_apply
 
+set_option synthInstance.etaExperiment true in
 @[simp]
 theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     (unitsSmul e w).coord i = (w i)⁻¹ • e.coord i := by
@@ -1263,8 +1270,7 @@ theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
     split_ifs with h <;> simp [h]
 #align basis.coord_units_smul Basis.coord_unitsSmul
 
--- Porting note: TODO: workaround for lean4#2074
-attribute [-instance] Ring.toNonAssocRing in
+set_option synthInstance.etaExperiment true in
 @[simp]
 theorem repr_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι) :
     (e.unitsSmul w).repr v i = (w i)⁻¹ • e.repr v i :=
@@ -1618,6 +1624,7 @@ theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
 
 open Submodule LinearMap
 
+set_option synthInstance.etaExperiment true in
 /-- If `p < ⊤` is a subspace of a vector space `V`, then there exists a nonzero linear map
 `f : V →ₗ[K] K` such that `p ≤ ker f`. -/
 theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
chore: fix #align lines (#3640)

This PR fixes two things:

  • Most align statements for definitions and theorems and instances that are separated by two newlines from the relevant declaration (s/\n\n#align/\n#align). This is often seen in the mathport output after ending calc blocks.
  • All remaining more-than-one-line #align statements. (This was needed for a script I wrote for #3630.)
Diff
@@ -155,7 +155,6 @@ theorem repr_symm_single : b.repr.symm (Finsupp.single i c) = c • b i :=
     b.repr.symm (Finsupp.single i c) = b.repr.symm (c • Finsupp.single i (1 : R)) := by
       { rw [Finsupp.smul_single', mul_one] }
     _ = c • b i := by rw [LinearEquiv.map_smul, repr_symm_single_one]
-
 #align basis.repr_symm_single Basis.repr_symm_single
 
 @[simp]
@@ -174,7 +173,6 @@ theorem repr_symm_apply (v) : b.repr.symm v = Finsupp.total ι M R b v :=
     _ = ∑ i in v.support, b.repr.symm (Finsupp.single i (v i)) :=
       by rw [Finsupp.sum, LinearEquiv.map_sum]
     _ = Finsupp.total ι M R b v := by simp [repr_symm_single, Finsupp.total_apply, Finsupp.sum]
-
 #align basis.repr_symm_apply Basis.repr_symm_apply
 
 @[simp]
@@ -333,7 +331,6 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
       { rw [← this]
         rfl }
     _ = f x i := rfl
-
 #align basis.repr_apply_eq Basis.repr_apply_eq
 
 /-- Two bases are equal if they assign the same coordinates. -/
@@ -487,7 +484,6 @@ theorem reindexRange_repr_self (i : ι) :
     b.reindexRange.repr (b i) = b.reindexRange.repr (b.reindexRange ⟨b i, mem_range_self i⟩) :=
       congr_arg _ (b.reindexRange_self _ _).symm
     _ = Finsupp.single ⟨b i, mem_range_self i⟩ 1 := b.reindexRange.repr_self _
-
 #align basis.reindex_range_repr_self Basis.reindexRange_repr_self
 
 @[simp]
@@ -567,7 +563,6 @@ protected theorem linearIndependent : LinearIndependent R b :=
     calc
       l = b.repr (Finsupp.total _ _ _ b l) := (b.repr_total l).symm
       _ = 0 := by rw [hl, LinearEquiv.map_zero]
-
 #align basis.linear_independent Basis.linearIndependent
 
 protected theorem ne_zero [Nontrivial R] (i) : b i ≠ 0 :=
@@ -1458,7 +1453,6 @@ noncomputable def sumExtend (hs : LinearIndependent K v) : Basis (ι ⊕ sumExte
         _ ≃ b :=
           haveI := Classical.decPred (· ∈ s)
           Equiv.Set.sumDiffSubset (hs.to_subtype_range.subset_extend _)
-
 #align basis.sum_extend Basis.sumExtend
 
 theorem subset_extend {s : Set V} (hs : LinearIndependent K ((↑) : s → V)) :
chore: bump to nightly-2023-04-11 (#3139)
Diff
@@ -1265,9 +1265,7 @@ theorem coord_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (i : ι) :
       simp [Basis.unitsSmul, ← mul_smul]
     simp only [Basis.coord_apply, LinearMap.smul_apply, Basis.repr_self, Units.smul_def,
       SMulHomClass.map_smul, Finsupp.single_apply]
-    split_ifs with h
-    · simp [h]
-    · simp
+    split_ifs with h <;> simp [h]
 #align basis.coord_units_smul Basis.coord_unitsSmul
 
 -- Porting note: TODO: workaround for lean4#2074
chore: fix docs, golf, rename (#3010)
  • Run fix-comments on Mathlib/LinearAlgebra/Basis.lean.
  • Rename Basis.of_repr to Basis.ofRepr.
  • Reflow/minor golf.
Diff
@@ -17,7 +17,6 @@ import Mathlib.LinearAlgebra.LinearPMap
 import Mathlib.LinearAlgebra.Projection
 
 /-!
-
 # Bases
 
 This file defines bases in a module or vector space.
@@ -29,30 +28,30 @@ It is inspired by Isabelle/HOL's linear algebra, and hence indirectly by HOL Lig
 All definitions are given for families of vectors, i.e. `v : ι → M` where `M` is the module or
 vector space and `ι : Type*` is an arbitrary indexing type.
 
-* `basis ι R M` is the type of `ι`-indexed `R`-bases for a module `M`,
+* `Basis ι R M` is the type of `ι`-indexed `R`-bases for a module `M`,
   represented by a linear equiv `M ≃ₗ[R] ι →₀ R`.
-* the basis vectors of a basis `b : basis ι R M` are available as `b i`, where `i : ι`
+* the basis vectors of a basis `b : Basis ι R M` are available as `b i`, where `i : ι`
 
-* `basis.repr` is the isomorphism sending `x : M` to its coordinates `basis.repr x : ι →₀ R`.
-  The converse, turning this isomorphism into a basis, is called `basis.of_repr`.
-* If `ι` is finite, there is a variant of `repr` called `basis.equiv_fun b : M ≃ₗ[R] ι → R`
-  (saving you from having to work with `finsupp`). The converse, turning this isomorphism into
-  a basis, is called `basis.of_equiv_fun`.
+* `Basis.repr` is the isomorphism sending `x : M` to its coordinates `Basis.repr x : ι →₀ R`.
+  The converse, turning this isomorphism into a basis, is called `Basis.ofRepr`.
+* If `ι` is finite, there is a variant of `repr` called `Basis.equivFun b : M ≃ₗ[R] ι → R`
+  (saving you from having to work with `Finsupp`). The converse, turning this isomorphism into
+  a basis, is called `Basis.ofEquivFun`.
 
-* `basis.constr hv f` constructs a linear map `M₁ →ₗ[R] M₂` given the values `f : ι → M₂` at the
+* `Basis.constr hv f` constructs a linear map `M₁ →ₗ[R] M₂` given the values `f : ι → M₂` at the
   basis elements `⇑b : ι → M₁`.
-* `basis.reindex` uses an equiv to map a basis to a different indexing set.
-* `basis.map` uses a linear equiv to map a basis to a different module.
+* `Basis.reindex` uses an equiv to map a basis to a different indexing set.
+* `Basis.map` uses a linear equiv to map a basis to a different module.
 
 ## Main statements
 
-* `basis.mk`: a linear independent set of vectors spanning the whole module determines a basis
+* `Basis.mk`: a linear independent set of vectors spanning the whole module determines a basis
 
-* `basis.ext` states that two linear maps are equal if they coincide on a basis.
+* `Basis.ext` states that two linear maps are equal if they coincide on a basis.
   Similar results are available for linear equivs (if they coincide on the basis vectors),
   elements (if their coordinates coincide) and the functions `b.repr` and `⇑b`.
 
-* `basis.of_vector_space` states that every vector space has a basis.
+* `Basis.ofVectorSpace` states that every vector space has a basis.
 
 ## Implementation notes
 
@@ -79,33 +78,33 @@ open BigOperators
 -- attribute [-instance] Ring.toNonAssocRing
 
 variable {ι : Type _} {ι' : Type _} {R : Type _} {R₂ : Type _} {K : Type _}
-
 variable {M : Type _} {M' M'' : Type _} {V : Type u} {V' : Type _}
 
 section Module
 
 variable [Semiring R]
-
 variable [AddCommMonoid M] [Module R M] [AddCommMonoid M'] [Module R M']
 
 section
 
-variable (ι) (R) (M)
+variable (ι R M)
 
-/-- A `basis ι R M` for a module `M` is the type of `ι`-indexed `R`-bases of `M`.
+/-- A `Basis ι R M` for a module `M` is the type of `ι`-indexed `R`-bases of `M`.
 
-The basis vectors are available as `coe_fn (b : basis ι R M) : ι → M`.
-To turn a linear independent family of vectors spanning `M` into a basis, use `basis.mk`.
+The basis vectors are available as `FunLike.coe (b : Basis ι R M) : ι → M`.
+To turn a linear independent family of vectors spanning `M` into a basis, use `Basis.mk`.
 They are internally represented as linear equivs `M ≃ₗ[R] (ι →₀ R)`,
-available as `basis.repr`.
+available as `Basis.repr`.
 -/
 structure Basis where
-  /-- `Basis.of_repr` constructs a basis given an assignment of coordinates to each vector. -/
-  of_repr ::
+  /-- `Basis.ofRepr` constructs a basis given an assignment of coordinates to each vector. -/
+  ofRepr ::
     /-- `repr` is the linear equivalence sending a vector `x` to its coordinates:
     the `c`s such that `x = ∑ i, c i`. -/
     repr : M ≃ₗ[R] ι →₀ R
 #align basis Basis
+#align basis.repr Basis.repr
+#align basis.of_repr Basis.ofRepr
 
 end
 
@@ -116,7 +115,7 @@ instance uniqueBasis [Subsingleton R] : Unique (Basis ι R M) :=
 namespace Basis
 
 instance : Inhabited (Basis ι R (ι →₀ R)) :=
-  ⟨Basis.of_repr (LinearEquiv.refl _ _)⟩
+  ⟨.ofRepr (LinearEquiv.refl _ _)⟩
 
 variable (b b₁ : Basis ι R M) (i : ι) (c : R) (x : M)
 
@@ -127,26 +126,21 @@ theorem repr_injective : Injective (repr : Basis ι R M → M ≃ₗ[R] ι →
 #align basis.repr_injective Basis.repr_injective
 
 /-- `b i` is the `i`th basis vector. -/
-instance funLike : FunLike (Basis ι R M) ι fun _ => M
-    where
+instance funLike : FunLike (Basis ι R M) ι fun _ => M where
   coe b i := b.repr.symm (Finsupp.single i 1)
-  coe_injective' f g h :=
-    repr_injective <|
-      LinearEquiv.symm_bijective.injective
-        (by
-          ext x
-          rw [← Finsupp.sum_single x, map_finsupp_sum, map_finsupp_sum]
-          congr with (i r)
-          have := congr_fun h i
-          dsimp at this
-          rw [← mul_one r, ← Finsupp.smul_single', LinearEquiv.map_smul, LinearEquiv.map_smul,
-            this])
+  coe_injective' f g h := repr_injective <| LinearEquiv.symm_bijective.injective <| by
+    ext x
+    rw [← Finsupp.sum_single x, map_finsupp_sum, map_finsupp_sum]
+    congr with (i r)
+    have := congr_fun h i
+    dsimp at this
+    rw [← mul_one r, ← Finsupp.smul_single', LinearEquiv.map_smul, LinearEquiv.map_smul, this]
 #align basis.fun_like Basis.funLike
 
 @[simp]
-theorem coe_of_repr (e : M ≃ₗ[R] ι →₀ R) : ⇑(of_repr e) = fun i => e.symm (Finsupp.single i 1) :=
+theorem coe_ofRepr (e : M ≃ₗ[R] ι →₀ R) : ⇑(ofRepr e) = fun i => e.symm (Finsupp.single i 1) :=
   rfl
-#align basis.coe_of_repr Basis.coe_of_repr
+#align basis.coe_of_repr Basis.coe_ofRepr
 
 protected theorem injective [Nontrivial R] : Injective b :=
   b.repr.symm.injective.comp fun _ _ => (Finsupp.single_left_inj (one_ne_zero : (1 : R) ≠ 0)).mp
@@ -282,9 +276,7 @@ end Coord
 section Ext
 
 variable {R₁ : Type _} [Semiring R₁] {σ : R →+* R₁} {σ' : R₁ →+* R}
-
 variable [RingHomInvPair σ σ'] [RingHomInvPair σ' σ]
-
 variable {M₁ : Type _} [AddCommMonoid M₁] [Module R₁ M₁]
 
 /-- Two linear maps are equal if they are equal on basis vectors. -/
@@ -345,11 +337,9 @@ theorem repr_apply_eq (f : M → ι → R) (hadd : ∀ x y, f (x + y) = f x + f
 #align basis.repr_apply_eq Basis.repr_apply_eq
 
 /-- Two bases are equal if they assign the same coordinates. -/
-theorem eq_of_repr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
-  repr_injective <| by
-    ext
-    apply h
-#align basis.eq_of_repr_eq_repr Basis.eq_of_repr_eq_repr
+theorem eq_ofRepr_eq_repr {b₁ b₂ : Basis ι R M} (h : ∀ x i, b₁.repr x i = b₂.repr x i) : b₁ = b₂ :=
+  repr_injective <| by ext; apply h
+#align basis.eq_of_repr_eq_repr Basis.eq_ofRepr_eq_repr
 
 /-- Two bases are equal if their basis vectors are the same. -/
 @[ext]
@@ -366,7 +356,7 @@ variable (f : M ≃ₗ[R] M')
 /-- Apply the linear equivalence `f` to the basis vectors. -/
 @[simps]
 protected def map : Basis ι R M' :=
-  of_repr (f.symm.trans b.repr)
+  ofRepr (f.symm.trans b.repr)
 #align basis.map Basis.map
 
 @[simp]
@@ -386,7 +376,7 @@ attribute [local instance] SMul.comp.isScalarTower
 /-- If `R` and `R'` are isomorphic rings that act identically on a module `M`,
 then a basis for `M` as `R`-module is also a basis for `M` as `R'`-module.
 
-See also `basis.algebra_map_coeffs` for the case where `f` is equal to `algebra_map`.
+See also `Basis.algebraMapCoeffs` for the case where `f` is equal to `algebraMap`.
 -/
 @[simps (config := { simpRhs := true })]
 def mapCoeffs : Basis ι R' M := by
@@ -397,10 +387,8 @@ def mapCoeffs : Basis ι R' M := by
         --               `HSMul.hsmul` becomes `SMul.smul`.
         change (f.symm x * y) • z = x • (y • z)
         rw [mul_smul, ← h, f.apply_symm_apply] }
-  exact
-    of_repr <|
-      (b.repr.restrictScalars R').trans <|
-        Finsupp.mapRange.linearEquiv (Module.compHom.toLinearEquiv f.symm).symm
+  exact ofRepr <| (b.repr.restrictScalars R').trans <|
+    Finsupp.mapRange.linearEquiv (Module.compHom.toLinearEquiv f.symm).symm
 #align basis.map_coeffs Basis.mapCoeffs
 
 theorem mapCoeffs_apply (i : ι) : b.mapCoeffs f h i = b i :=
@@ -432,14 +420,13 @@ variable (e : ι ≃ ι')
 
 /-- `b.reindex (e : ι ≃ ι')` is a basis indexed by `ι'` -/
 def reindex : Basis ι' R M :=
-  Basis.of_repr (b.repr.trans (Finsupp.domLCongr e))
+  .ofRepr (b.repr.trans (Finsupp.domLCongr e))
 #align basis.reindex Basis.reindex
 
 theorem reindex_apply (i' : ι') : b.reindex e i' = b (e.symm i') :=
-  show
-    (b.repr.trans (Finsupp.domLCongr e)).symm (Finsupp.single i' 1) =
-      b.repr.symm (Finsupp.single (e.symm i') 1)
-    by rw [LinearEquiv.symm_trans_apply, Finsupp.domLCongr_symm, Finsupp.domLCongr_single]
+  show (b.repr.trans (Finsupp.domLCongr e)).symm (Finsupp.single i' 1) =
+    b.repr.symm (Finsupp.single (e.symm i') 1)
+  by rw [LinearEquiv.symm_trans_apply, Finsupp.domLCongr_symm, Finsupp.domLCongr_single]
 #align basis.reindex_apply Basis.reindex_apply
 
 @[simp]
@@ -461,7 +448,7 @@ theorem reindex_refl : b.reindex (Equiv.refl ι) = b :=
   eq_of_apply_eq fun i => by simp
 #align basis.reindex_refl Basis.reindex_refl
 
-/-- `simp` can prove this as `basis.coe_reindex` + `equiv_like.range_comp` -/
+/-- `simp` can prove this as `Basis.coe_reindex` + `EquivLike.range_comp` -/
 theorem range_reindex : Set.range (b.reindex e) = Set.range b := by
   simp [coe_reindex, range_comp]
 #align basis.range_reindex Basis.range_reindex
@@ -481,7 +468,7 @@ def reindexRange : Basis (range b) R M :=
     b.reindex (Equiv.ofInjective b (Basis.injective b))
   else
     letI : Subsingleton R := not_nontrivial_iff_subsingleton.mp h
-    Basis.of_repr (Module.subsingletonEquiv R M (range b))
+    .ofRepr (Module.subsingletonEquiv R M (range b))
 #align basis.reindex_range Basis.reindexRange
 
 theorem reindexRange_self (i : ι) (h := Set.mem_range_self i) : b.reindexRange ⟨b i, h⟩ = b i := by
@@ -619,14 +606,13 @@ variable [SMulCommClass R S M']
 
 /-- Construct a linear map given the value at the basis.
 
-This definition is parameterized over an extra `semiring S`,
-such that `smul_comm_class R S M'` holds.
+This definition is parameterized over an extra `Semiring S`,
+such that `SMulCommClass R S M'` holds.
 If `R` is commutative, you can set `S := R`; if `R` is not commutative,
-you can recover an `add_equiv` by setting `S := ℕ`.
+you can recover an `AddEquiv` by setting `S := ℕ`.
 See library note [bundled maps over different rings].
 -/
-def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M'
-    where
+def constr : (ι → M') ≃ₗ[S] M →ₗ[R] M' where
   toFun f := (Finsupp.total M' M' R id).comp <| Finsupp.lmapDomain R R f ∘ₗ ↑b.repr
   invFun f i := f (b i)
   left_inv f := by
@@ -728,11 +714,11 @@ section Prod
 
 variable (b' : Basis ι' R M')
 
-/-- `basis.prod` maps a `ι`-indexed basis for `M` and a `ι'`-indexed basis for `M'`
+/-- `Basis.prod` maps a `ι`-indexed basis for `M` and a `ι'`-indexed basis for `M'`
 to a `ι ⊕ ι'`-index basis for `M × M'`.
-For the specific case of `R × R`, see also `basis.fin_two_prod`. -/
+For the specific case of `R × R`, see also `Basis.finTwoProd`. -/
 protected def prod : Basis (Sum ι ι') R (M × M') :=
-  of_repr ((b.repr.prod b'.repr).trans (Finsupp.sumFinsuppLEquivProdFinsupp R).symm)
+  ofRepr ((b.repr.prod b'.repr).trans (Finsupp.sumFinsuppLEquivProdFinsupp R).symm)
 #align basis.prod Basis.prod
 
 @[simp]
@@ -748,7 +734,7 @@ theorem prod_repr_inr (x) (i) : (b.prod b').repr x (Sum.inr i) = b'.repr x.2 i :
 theorem prod_apply_inl_fst (i) : (b.prod b' (Sum.inl i)).1 = b i :=
   b.repr.injective <| by
     ext j
-    simp only [Basis.prod, Basis.coe_of_repr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
+    simp only [Basis.prod, Basis.coe_ofRepr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
       LinearEquiv.prod_apply, b.repr.apply_symm_apply, LinearEquiv.symm_symm, repr_self,
       Equiv.toFun_as_coe, Finsupp.fst_sumFinsuppLEquivProdFinsupp]
     apply Finsupp.single_apply_left Sum.inl_injective
@@ -757,7 +743,7 @@ theorem prod_apply_inl_fst (i) : (b.prod b' (Sum.inl i)).1 = b i :=
 theorem prod_apply_inr_fst (i) : (b.prod b' (Sum.inr i)).1 = 0 :=
   b.repr.injective <| by
     ext i
-    simp only [Basis.prod, Basis.coe_of_repr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
+    simp only [Basis.prod, Basis.coe_ofRepr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
       LinearEquiv.prod_apply, b.repr.apply_symm_apply, LinearEquiv.symm_symm, repr_self,
       Equiv.toFun_as_coe, Finsupp.fst_sumFinsuppLEquivProdFinsupp, LinearEquiv.map_zero,
       Finsupp.zero_apply]
@@ -767,7 +753,7 @@ theorem prod_apply_inr_fst (i) : (b.prod b' (Sum.inr i)).1 = 0 :=
 theorem prod_apply_inl_snd (i) : (b.prod b' (Sum.inl i)).2 = 0 :=
   b'.repr.injective <| by
     ext j
-    simp only [Basis.prod, Basis.coe_of_repr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
+    simp only [Basis.prod, Basis.coe_ofRepr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
       LinearEquiv.prod_apply, b'.repr.apply_symm_apply, LinearEquiv.symm_symm, repr_self,
       Equiv.toFun_as_coe, Finsupp.snd_sumFinsuppLEquivProdFinsupp, LinearEquiv.map_zero,
       Finsupp.zero_apply]
@@ -777,7 +763,7 @@ theorem prod_apply_inl_snd (i) : (b.prod b' (Sum.inl i)).2 = 0 :=
 theorem prod_apply_inr_snd (i) : (b.prod b' (Sum.inr i)).2 = b' i :=
   b'.repr.injective <| by
     ext i
-    simp only [Basis.prod, Basis.coe_of_repr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
+    simp only [Basis.prod, Basis.coe_ofRepr, LinearEquiv.symm_trans_apply, LinearEquiv.prod_symm,
       LinearEquiv.prod_apply, b'.repr.apply_symm_apply, LinearEquiv.symm_symm, repr_self,
       Equiv.toFun_as_coe, Finsupp.snd_sumFinsuppLEquivProdFinsupp]
     apply Finsupp.single_apply_left Sum.inr_injective
@@ -798,8 +784,7 @@ section NoZeroSMulDivisors
 -- Can't be an instance because the basis can't be inferred.
 protected theorem noZeroSMulDivisors [NoZeroDivisors R] (b : Basis ι R M) :
     NoZeroSMulDivisors R M :=
-  ⟨by
-    intros c x hcx
+  ⟨fun {c x} hcx => by
     exact or_iff_not_imp_right.mpr fun hx => by
       rw [← b.total_repr x, ← LinearMap.map_smul] at hcx
       have := linearIndependent_iff.mp b.linearIndependent (c • b.repr x) hcx
@@ -831,9 +816,9 @@ end NoZeroSMulDivisors
 
 section Singleton
 
-/-- `basis.singleton ι R` is the basis sending the unique element of `ι` to `1 : R`. -/
+/-- `Basis.singleton ι R` is the basis sending the unique element of `ι` to `1 : R`. -/
 protected def singleton (ι R : Type _) [Unique ι] [Semiring R] : Basis ι R R :=
-  of_repr
+  ofRepr
     { toFun := fun x => Finsupp.single default x
       invFun := fun f => f default
       left_inv := fun x => by simp
@@ -860,15 +845,13 @@ theorem basis_singleton_iff {R M : Type _} [Ring R] [Nontrivial R] [AddCommGroup
     refine' ⟨b default, b.linearIndependent.ne_zero _, _⟩
     simpa [span_singleton_eq_top_iff, Set.range_unique] using b.span_eq
   · rintro ⟨x, nz, w⟩
-    refine'
-      ⟨of_repr <|
-          LinearEquiv.symm
-            { toFun := fun f => f default • x
-              invFun := fun y => Finsupp.single default (w y).choose
-              left_inv := fun f => Finsupp.unique_ext _
-              right_inv := fun y => _
-              map_add' := fun y z => _
-              map_smul' := fun c y => _ }⟩
+    refine ⟨ofRepr <| LinearEquiv.symm
+      { toFun := fun f => f default • x
+        invFun := fun y => Finsupp.single default (w y).choose
+        left_inv := fun f => Finsupp.unique_ext ?_
+        right_inv := fun y => ?_
+        map_add' := fun y z => ?_
+        map_smul' := fun c y => ?_ }⟩
     · simp [Finsupp.add_apply, add_smul]
     · simp only [Finsupp.coe_smul, Pi.smul_apply, RingHom.id_apply]
       rw [← smul_assoc, smul_eq_mul]
@@ -887,13 +870,12 @@ variable (M)
 
 /-- If `M` is a subsingleton and `ι` is empty, this is the unique `ι`-indexed basis for `M`. -/
 protected def empty [Subsingleton M] [IsEmpty ι] : Basis ι R M :=
-  of_repr 0
+  ofRepr 0
 #align basis.empty Basis.empty
 
-instance emptyUnique [Subsingleton M] [IsEmpty ι] : Unique (Basis ι R M)
-    where
+instance emptyUnique [Subsingleton M] [IsEmpty ι] : Unique (Basis ι R M) where
   default := Basis.empty M
-  uniq := fun _ => congr_arg of_repr <| Subsingleton.elim _ _
+  uniq := fun _ => congr_arg ofRepr <| Subsingleton.elim _ _
 #align basis.empty_unique Basis.emptyUnique
 
 end Empty
@@ -925,13 +907,12 @@ def Module.fintypeOfFintype (b : Basis ι R M) [Fintype R] : Fintype M :=
   Fintype.ofEquiv _ b.equivFun.toEquiv.symm
 #align module.fintype_of_fintype Module.fintypeOfFintype
 
-theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] : card M = card R ^ card ι :=
-  by
-  classical exact
-      calc
-        card M = card (ι → R) := card_congr b.equivFun.toEquiv
-        _ = card R ^ card ι := card_fun
-
+theorem Module.card_fintype (b : Basis ι R M) [Fintype R] [Fintype M] :
+    card M = card R ^ card ι := by
+  classical
+    calc
+      card M = card (ι → R) := card_congr b.equivFun.toEquiv
+      _ = card R ^ card ι := card_fun
 #align module.card_fintype Module.card_fintype
 
 /-- Given a basis `v` indexed by `ι`, the canonical linear equivalence between `ι → R` and `M` maps
@@ -980,7 +961,7 @@ theorem Basis.repr_sum_self (c : ι → R) : ⇑(b.repr (∑ i, c i • b i)) =
 /-- Define a basis by mapping each vector `x : M` to its coordinates `e x : ι → R`,
 as long as `ι` is finite. -/
 def Basis.ofEquivFun (e : M ≃ₗ[R] ι → R) : Basis ι R M :=
-  Basis.of_repr <| e.trans <| LinearEquiv.symm <| Finsupp.linearEquivFunOnFinite R R ι
+  .ofRepr <| e.trans <| LinearEquiv.symm <| Finsupp.linearEquivFunOnFinite R R ι
 #align basis.of_equiv_fun Basis.ofEquivFun
 
 @[simp]
@@ -1142,7 +1123,7 @@ variable (hli : LinearIndependent R v) (hsp : ⊤ ≤ span R (range v))
 
 /-- A linear independent family of vectors spanning the whole module is a basis. -/
 protected noncomputable def mk : Basis ι R M :=
-  Basis.of_repr
+  .ofRepr
     {
       hli.repr.comp
         (LinearMap.id.codRestrict _ fun _ =>
@@ -1297,7 +1278,7 @@ theorem repr_unitsSmul (e : Basis ι R₂ M) (w : ι → R₂ˣ) (v : M) (i : ι
   congr_arg (fun f : M →ₗ[R₂] R₂ => f v) (e.coord_unitsSmul w i)
 #align basis.repr_units_smul Basis.repr_unitsSmul
 
-/-- A version of `smul_of_units` that uses `is_unit`. -/
+/-- A version of `smul_of_units` that uses `IsUnit`. -/
 def isUnitSmul (v : Basis ι R M) {w : ι → R} (hw : ∀ i, IsUnit (w i)) : Basis ι R M :=
   unitsSmul v fun i => (hw i).unit
 #align basis.is_unit_smul Basis.isUnitSmul
@@ -1311,7 +1292,7 @@ section Fin
 
 /-- Let `b` be a basis for a submodule `N` of `M`. If `y : M` is linear independent of `N`
 and `y` and `N` together span the whole of `M`, then there is a basis for `M`
-whose basis vectors are given by `fin.cons y b`. -/
+whose basis vectors are given by `Fin.cons y b`. -/
 noncomputable def mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R N)
     (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0) (hsp : ∀ z : M, ∃ c : R, z + c • y ∈ N) :
     Basis (Fin (n + 1)) R M :=
@@ -1340,7 +1321,7 @@ theorem coe_mkFinCons {n : ℕ} {N : Submodule R M} (y : M) (b : Basis (Fin n) R
 
 /-- Let `b` be a basis for a submodule `N ≤ O`. If `y ∈ O` is linear independent of `N`
 and `y` and `N` together span the whole of `O`, then there is a basis for `O`
-whose basis vectors are given by `fin.cons y b`. -/
+whose basis vectors are given by `Fin.cons y b`. -/
 noncomputable def mkFinConsOfLe {n : ℕ} {N O : Submodule R M} (y : M) (yO : y ∈ O)
     (b : Basis (Fin n) R N) (hNO : N ≤ O) (hli : ∀ (c : R), ∀ x ∈ N, c • y + x = 0 → c = 0)
     (hsp : ∀ z ∈ O, ∃ c : R, z + c • y ∈ N) : Basis (Fin (n + 1)) R O :=
@@ -1388,15 +1369,13 @@ end Module
 section Induction
 
 variable [Ring R] [IsDomain R]
-
 variable [AddCommGroup M] [Module R M] {b : ι → M}
 
 /-- If `N` is a submodule with finite rank, do induction on adjoining a linear independent
 element to a submodule. -/
 def Submodule.inductionOnRankAux (b : Basis ι R M) (P : Submodule R M → Sort _)
-    (ih :
-      ∀ N : Submodule R M,
-        (∀ N' ≤ N, ∀ x ∈ N, (∀ (c : R), ∀ y ∈ N', c • x + y = (0 : M) → c = 0) → P N') → P N)
+    (ih : ∀ N : Submodule R M,
+      (∀ N' ≤ N, ∀ x ∈ N, (∀ (c : R), ∀ y ∈ N', c • x + y = (0 : M) → c = 0) → P N') → P N)
     (n : ℕ) (N : Submodule R M)
     (rank_le : ∀ {m : ℕ} (v : Fin m → N), LinearIndependent R ((↑) ∘ v : Fin m → M) → m ≤ n) :
     P N := by
@@ -1493,7 +1472,7 @@ section
 
 variable (K V)
 
-/-- A set used to index `basis.of_vector_space`. -/
+/-- A set used to index `Basis.ofVectorSpace`. -/
 noncomputable def ofVectorSpaceIndex : Set V :=
   (linearIndependent_empty K V).extend (subset_univ _)
 #align basis.of_vector_space_index Basis.ofVectorSpaceIndex
@@ -1559,17 +1538,10 @@ theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodul
     change span K {v} ≤ T
     simp_rw [span_singleton_le_iff_mem, ← Ne.def, Submodule.ne_bot_iff] at *
     rcases h with ⟨s, ⟨hs, hz⟩⟩
-    cases' mem_span_singleton.1 (hT.1 hs) with a ha
-    have h : a ≠ 0 := by
-      intro h
-      rw [h, zero_smul] at ha
-      exact hz ha.symm
-    -- Porting note: The below does not work, does not recognize `u`, probably a bug in apply_fun
-    -- let u := (fun (x : K) => (a⁻¹ • x))
-    -- apply_fun u at ha
-    have ha' : a⁻¹ • (a • v) = a⁻¹ • s := by rw [ha]
-    simp_rw [← mul_smul, inv_mul_cancel h, one_smul, ha'] at *
-    exact smul_mem T _ hs
+    rcases mem_span_singleton.1 (hT.1 hs) with ⟨a, rfl⟩
+    rcases eq_or_ne a 0 with rfl | h
+    · simp only [zero_smul, ne_eq, not_true] at hz
+    · rwa [T.smul_mem_iff h] at hs
 #align nonzero_span_atom nonzero_span_atom
 
 /-- The atoms of the lattice of submodules of a module over a division ring are the
@@ -1589,12 +1561,11 @@ theorem atom_iff_nonzero_span (W : Submodule K V) :
 #align atom_iff_nonzero_span atom_iff_nonzero_span
 
 /-- The lattice of submodules of a module over a division ring is atomistic. -/
-instance : IsAtomistic (Submodule K V)
-    where eq_supₛ_atoms := by
-    { intro W
-      use { T : Submodule K V | ∃ (v : V) (_ : v ∈ W) (_ : v ≠ 0), T = span K {v} }
-      refine' ⟨submodule_eq_supₛ_le_nonzero_spans W, _⟩
-      rintro _ ⟨w, ⟨_, ⟨hw, rfl⟩⟩⟩; exact nonzero_span_atom w hw}
+instance : IsAtomistic (Submodule K V) where
+  eq_supₛ_atoms W := by
+    refine ⟨_, submodule_eq_supₛ_le_nonzero_spans W, ?_⟩
+    rintro _ ⟨w, ⟨_, ⟨hw, rfl⟩⟩⟩
+    exact nonzero_span_atom w hw
 
 end AtomsOfSubmoduleLattice
 
feat: tactic congr! and improvement to convert (#2566)

This introduces a tactic congr! that is an analogue to mathlib 3's congr'. It is a more insistent version of congr that makes use of more congruence lemmas (including user congruence lemmas), propext, funext, and Subsingleton instances. It also has a feature to lift reflexive relations to equalities. Along with funext, the tactic does intros, allowing congr! to get access to function bodies; the introduced variables can be named using rename_i if needed.

This also modifies convert to use congr! rather than congr, which makes it work more like the mathlib3 version of the tactic.

Diff
@@ -825,7 +825,6 @@ theorem eq_bot_of_rank_eq_zero [NoZeroDivisors R] (b : Basis ι R M) (N : Submod
   simp only [Function.const_apply, Fin.default_eq_zero, Submodule.coe_mk, Finset.univ_unique,
     Function.comp_const, Finset.sum_singleton] at sum_eq
   convert (b.smul_eq_zero.mp sum_eq).resolve_right x_ne
-  rwa [Nat.lt_one_iff] at hi
 #align eq_bot_of_rank_eq_zero Basis.eq_bot_of_rank_eq_zero
 
 end NoZeroSMulDivisors
feat: port LinearAlgebra.Basis (#2435)

Co-authored-by: Komyyy <pol_tta@outlook.jp> Co-authored-by: Lukas Miaskiwskyi <lukas.mias@gmail.com> Co-authored-by: ADedecker <anatolededecker@gmail.com> Co-authored-by: Anne Baanen <t.baanen@vu.nl>

Dependencies 8 + 419

420 files ported (98.1%)
174548 lines ported (98.2%)
Show graph

The unported dependencies are